@charset "UTF-8";
/*20230901_SSC修正*/
/*========================
  CSS Reset
========================*/

*, *::before, *::after {
  box-sizing: border-box;
}
* {
  margin: 0;
}
html, body {
  height: 100%;
}
body {
  line-height: 1.9;
  -webkit-font-smoothing: antialiased;
}
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}
input, button, textarea, select {
  font: inherit;
}
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}
#root, #__next {
  isolation: isolate;
}

/*========================
全体
========================*/
html {
  scroll-behavior: smooth;
}
body {
  position: relative;
  font-family: sans-serif;
}
.content {
  max-width: 1240px;
  margin: 0 auto;
  position: relative;
  padding: 2rem 3rem;
}
p,
ul,
ol,
table {
  position: relative;
  margin-bottom: 3rem;
}

/*========================
ヘッダ
========================*/
header {
  max-width: 1240px;
  margin: 0 auto;
}
.header-menu {
  max-width: 1240px;
  padding: 20px 30px;
}
.download-link {
  padding-bottom: 30px;
}
.download-text {
  color: #DBC16F;
  font-weight: bold;
  font-size: 21px;
  margin-left: 50px;
  margin-bottom: 0;
  text-align: left;
}
.download-icon {
  text-align: left;
  margin-left: 50px;
}
.download-icon a {
  display: inline-block;
}
.download-icon a img {
  height: 60px;
}

@media screen and (width <= 767px){

    .header-menu {
    }
    .header-menu img {
        max-height: 50px;
    }

  .download-link {
    margin: 10px 0 20px;
    padding-bottom: 20px;
    text-align: center;
  }
  .download-text {
      text-align: center;
      margin-left: 0;
}
    .download-icon {
        text-align: center;
        margin: 0 0 40%;
    }
  .download-icon a {
    display: inline-block;
  }
  .download-icon a img {
    height: 70px;
  }
}


/*========================
レスポンシブメニュー
========================*/
.menu-icon,
.menu-list  {
    display: none;
}

@media screen and (max-width: 1024px) {
  /* ハンバーガーアイコンの設定 */
  .menu-icon {
    display: block;
    position: fixed;
    top: 15px;
    right: 10px;
    width: 60px;
    height: 60px;
    cursor: pointer;
    z-index: 9999;
  }
  .menu-icon .bar {
    width: 30px;
    height: 5px;
    background-color: #FF9900;
    margin: 6px auto;
    transition: transform 0.2s ease;
  }
  .menu-icon.open .bar:nth-child(1) {
    transform: translateY(11px) rotate(45deg);
  }
  .menu-icon.open .bar:nth-child(2) {
    opacity: 0;
  }
  .menu-icon.open .bar:nth-child(3) {
    transform: translateY(-11px) rotate(-45deg);
  }
  
/* メニューの設定 */
  .menu-list {
    display: block;
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 9998;
    transition: right 0.2s ease;
    background: #FF9900;
    padding-top: 1rem;
  }
  .menu-list li {
    display: block;
    list-style: none;
    line-height: 1.3rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
  .menu-list a {
    display: block;
    padding: 0.5rem;
    text-decoration: none;
    color: #FFF;
    font-weight: bold;
    font-size: 1.1rem;
  }
  .menu-list.open {
      right: 0;
  }
}


/*========================
各ページ
========================*/

.fade-in {
  opacity: 0;
  transition: opacity 2s ease-in-out;
}

@media screen and (width <= 767px){
    .content {
        padding: 2rem 1.5rem;
    }
}
/*--------------------------------------
 本文
--------------------------------------*/

.content p {
  font-size: clamp(0.875rem, 0.79rem + 0.43vw, 1.11rem);
}



/*--------------------------------------
 リンク
--------------------------------------*/

a{
    color: #D3834B;
    position: relative;
}
a:active,
a:hover {
    opacity: 0.6;
}

a.link-arrow:before {
    position: absolute;
    left: 3px;
    bottom: 25%;
    width: 13px;
    height: 13px;
    content: '';
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 13' width='13' height='13' preserveAspectRatio='xMinYMid'%3E%3Cpath fill='%23666666' d='M9.42462254,6.01040888 L3.41421652,0 L2,1.41421402 L6.59619522,6.0104084 L2,10.6066008 L3.41421354,12.0208149 L9.42462254,6.01040888 Z' /%3E%3C/svg%3E");
    background-repeat:  no-repeat;
    display: block;
    background-size: 13px;
    background-position: 0;
}
a.link-arrow {
	display: block;
    padding-left: 25px;
}
a.link-arrow.inline {
    display: inline-block;
    padding-left: 17px;
    padding-right: 5px;
}

a.link-blank:before {
    position: absolute;
    left: -3px;
    bottom: 28%;
    width: 16px;
    height: 16px;
    content: '';
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' width='20' height='20' preserveAspectRatio='xMinYMid'%3E%3Cpath fill='%23666666' d='M17.9985647,7.41421366 L17.9985647,11 L19.9985647,11 L19.9985647,4 L12.9985647,4 L12.9985647,6 L16.5843515,6 L10.2914581,12.2928934 L11.7056718,13.7071066 L17.9985647,7.41421366 Z M19.0014648,14 L17.0014648,14 L17.0014648,18 L6.00146484,18 L6.00146484,7 L10.0014648,7 L10.0014648,5 L6.00146484,5 C4.89689529,5 4.00146484,5.89543045 4.00146484,7 L4.00146484,18 C4.00146484,19.1045694 4.89689529,20 6.00146484,20 L17.0014648,20 C18.1060343,20 19.0014648,19.1045694 19.0014648,18 L19.0014648,14 Z' /%3E%3C/svg%3E");
    background-repeat:  no-repeat;
    display: block;
    background-size: 16px;
    background-position: 0;
}
a.link-blank {
	display: block;
    padding-left: 25px;
}
a.link-blank.inline {
    display: inline-block;
    padding-left: 19px;
    padding-right: 5px;
    margin-left: 6px;
}

a.link-pdf:before {
    position: absolute;
    left: -1px;
    bottom: 23%;
    width: 14px;
    height: 19px;
    content: '';
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 27 32' width='27' height='32' preserveAspectRatio='xMinYMid'%3E%3Cpath fill='%23E94848' d='M16 0v6.745c0 2.062 1.86 3.922 3.922 3.922l6.744.148v17.452A3.733 3.733 0 0 1 22.934 32h-19.2A3.733 3.733 0 0 1 0 28.267V3.733A3.733 3.733 0 0 1 3.733 0H16Zm-3.7 10.2a1.898 1.898 0 0 0-1.889 1.889c0 1.288.716 2.888 1.47 4.392-.59 1.844-1.258 3.821-2.113 5.49-1.75.686-3.312 1.196-4.25 1.953a.567.567 0 0 0-.042.047A1.898 1.898 0 0 0 6.822 27.2c.506 0 .994-.189 1.346-.549a.567.567 0 0 0 .035-.03c.691-.824 1.506-2.32 2.232-3.689 1.672-.658 3.426-1.327 5.117-1.73 1.235.996 3.022 1.654 4.492 1.654a1.898 1.898 0 0 0 1.89-1.89 1.898 1.898 0 0 0-1.89-1.888c-1.179 0-2.892.42-4.202.862a13.987 13.987 0 0 1-2.74-3.566c.502-1.543 1.087-3.088 1.087-4.285A1.898 1.898 0 0 0 12.3 10.2Zm-3.367 13c-.59 1.15-1.175 2.224-1.585 2.764a.761.761 0 0 1-.576.236c-.47 0-.839-.402-.839-.916 0-.242.094-.483.223-.638.492-.416 1.561-.914 2.777-1.446Zm11.202-3c.448 0 .798.439.798 1 0 .561-.35 1-.798 1-.9 0-2.18-.509-3.202-1.219 1.174-.415 2.454-.781 3.202-.781Zm-7.582-2c.69.753 1.498 1.454 2.38 2.075-1.36.256-2.689.583-4 .925.634-.98 1.14-1.998 1.62-3Zm-.12-7c.28 0 .5.38.5.866 0 .65-.2 1.847-.433 3.134-.311-1.252-.567-2.453-.567-3.134 0-.486.22-.866.5-.866ZM17 1l8.796 8.796-5.852-.13-.164-.004C18.313 9.566 17 8.2 17 6.745V1Z' /%3E%3C/svg%3E");
    background-repeat:  no-repeat;
    display: block;
    background-size: 14px;
    background-position: 0;
}
a.link-pdf {
	display: block;
    padding-left: 25px;
}


.link-list,
.link-list-noborder {
    padding-left: 0;
}

.link-list li,
.link-list-noborder li {
    list-style-type: none;
}
.link-list-noborder li a {
	text-decoration: none;
}
.link-noborder {
	text-decoration: none;
}



/*========================
ボタン
========================*/
.btn-link-list {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    width: calc( 100% + 30px );
    margin-left: -15px;
    margin-right: -15px;
    margin-top: 0;
    margin-bottom: 1rem;
    padding-left: 0;
}

.btn-link-list.left-start {
    justify-content: flex-start;
}
.btn-link-list li,
.btn-link-list p {
    flex: auto;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 0;
    margin-bottom: 2rem;
    list-style-type: none;
    align-items: center;
    cursor: pointer;
}
.btn-link-list a.btn-link-04,
.btn-link-list a.btn-link-05 {
  width: 100%;
}

.btn-link-list a:hover{
  opacity: 60%;
}
.content .btn-disabled,
.content a.btn-disabled{
  opacity: 0.4;
  background: #666666;
  cursor: default;
  pointer-events: none;
}


.btn-link-list li:first-child{
    margin-top: inherit;
}
.btn-link-list li:last-child{
    margin-bottom: inherit;
}

.btn-link-list li a {
  margin: 0;
}


@media screen and (max-width: 599px) {
  .btn-link-list {
    display: block;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 4rem;
  }
  .btn-link-list + .btn-link-list {
    margin-top: -3rem;
  }

  .btn-link-list button{
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 16px;
  }

  .btn-link-list li {
    margin-left: 0;
    margin-right: 0;
    padding: 0;
    margin-bottom: 16px;
  }
  .btn-link-list p {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 16px;
  }
  .content .btn-link-01,
  .content .btn-link-02,
  .content .btn-link-03 {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 16px;
  }

}

.btn-link-01,
.btn-link-02,
.btn-link-03 {
    display: flex;
    position: relative;
    border: none;
    border-radius: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    text-decoration: none;
    outline: 0;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    background-color: #F18F35;
}



.align-right .btn-link-01,
.align-right .btn-link-02,
.align-right .btn-link-03 {
    margin-left: auto;
    margin-right:0;
}
.align-left .btn-link-01,
.align-left .btn-link-02,
.align-left .btn-link-03 {
	margin-left:0;
    margin-right: auto;
}

@media screen and (max-width: 599px) {
	.btn-link-01,
	.btn-link-02,
	.btn-link-03 {
		width: 100%;
	}
}


.btn-link-01 {
    padding: 1rem 3.2rem;
}
.btn-link-02 {
    padding: 2rem 3.2rem;
    font-size: 1.4rem;
}
.btn-link-02 {
    padding: 1rem 3.2rem;
    font-size: 1.3em;
}
.btn-link-03 {
    padding: 2rem 3.2rem;
    font-size: 1.6rem;
}
.btn-link-01:before,
.btn-link-02:before,
.btn-link-03:before {
    position: absolute;
    top: calc( 50% + -0.35rem );
    left: 1.5rem;
    width: 13px;
    height: 13px;
    content: '';
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 13' width='13' height='13' preserveAspectRatio='xMinYMid'%3E%3Cpath fill='%23FFFFFF' d='M9.42462254,6.01040888 L3.41421652,0 L2,1.41421402 L6.59619522,6.0104084 L2,10.6066008 L3.41421354,12.0208149 L9.42462254,6.01040888 Z' /%3E%3C/svg%3E");
    background-repeat:  no-repeat;
    display: block;
    background-size: 13px;
    padding-left: 0px;
    background-position: 0;
}
.btn-link-01.back:before,
.btn-link-02.back:before,
.btn-link-03.back:before {
    transform: rotateZ(180deg);
}
.btn-link-01.link-blank:before,
.btn-link-02.link-blank:before,
.btn-link-03.link-blank:before {
    position: absolute;
    top: calc( 50% + -0.8rem );
    left: 1.2rem;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' width='20' height='20' preserveAspectRatio='xMinYMid'%3E%3Cpath fill='%23FFFFFF' d='M17.9985647,7.41421366 L17.9985647,11 L19.9985647,11 L19.9985647,4 L12.9985647,4 L12.9985647,6 L16.5843515,6 L10.2914581,12.2928934 L11.7056718,13.7071066 L17.9985647,7.41421366 Z M19.0014648,14 L17.0014648,14 L17.0014648,18 L6.00146484,18 L6.00146484,7 L10.0014648,7 L10.0014648,5 L6.00146484,5 C4.89689529,5 4.00146484,5.89543045 4.00146484,7 L4.00146484,18 C4.00146484,19.1045694 4.89689529,20 6.00146484,20 L17.0014648,20 C18.1060343,20 19.0014648,19.1045694 19.0014648,18 L19.0014648,14 Z' /%3E%3C/svg%3E");
    background-repeat:  no-repeat;
    display: block;
    background-size: 13px;
    padding-left: 0px;
    background-position: 0;
}

.btn-link-01.link-movie:before,
.btn-link-02.link-movie:before,
.btn-link-03.link-movie:before {
    position: absolute;
    top: calc( 50% + -1.1rem );
    left: 1.5rem;
    width: 33px;
    height: 33px;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 33 33' width='33' height='33' preserveAspectRatio='xMinYMid'%3E%3Cpath fill='%23FFFFFF' d='M29,5 C31.209139,5 33,6.790861 33,9 L33,24 C33,26.209139 31.209139,28 29,28 L4,28 C1.790861,28 2.705415e-16,26.209139 0,24 L0,9 C-2.705415e-16,6.790861 1.790861,5 4,5 L29,5 Z M11,11 L11,23 L23,17 L11,11 Z' /%3E%3C/svg%3E");
    display: block;
    background-size: 22px;
    padding-left: 0px;
    background-position: 0;
}


/*========================
ボタン（svgじゃなくてボーダー）
========================*/


/* ボタン共通設定 */
.btn-link-04{
  /*矢印の基点とするためrelativeを指定*/
	position: relative;
  /*ボタンの形状*/
	text-decoration: none;
	display: inline-block;
	color:#fff;
  padding: 10px 40px 10px 30px;
	border-radius: 25px;
  text-align: center;
  outline: none;
  font-weight: bold;
  white-space: nowrap;
  /*アニメーションの指定*/
  transition: ease .2s;
}
.btn-link-04.back,
.btn-link-05.back{
  padding: 10px 30px 10px 40px;
  /*アニメーションの指定*/
  transition: ease .2s;
}

.btn-link-05{
	text-decoration: none;
	display: inline-block;
	background: #FFF;
  padding: 10px 40px 10px 30px;
	border-radius: 25px;
  text-align: center;
  outline: none;
  font-weight: bold;
  white-space: nowrap;
  /*アニメーションの指定*/
  transition: ease .2s;
}

.btn-link-04::after,
.btn-link-05::after{
  content: '';
  /*絶対配置で矢印の位置を決める*/
  position: absolute;
  top:42%;
  right: 13px;
  /*矢印の形状*/
  width: 7px;
  height: 7px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
  /*アニメーションの指定*/
  transition: all .3s;
}

/*hoverした際の移動*/
.btn-link-04:hover::after,
.btn-link-05:hover::after{
    right: 11px;
}

/*逆方向*/
.btn-link-04.back::after,
.btn-link-05.back::after{
  left: 13px;
  transform: rotate(225deg);
}

/*hoverした際の移動*/
.btn-link-04.back:hover::after,
.btn-link-05.back:hover::after{
    left: 11px;
}



/*--------------------------------------
 見出し関連
--------------------------------------*/
.subheading-01 {
    margin: 1.5rem 1rem 4rem 0;
    color: #EB9D42;
    text-wrap: balance;
    word-break: keep-all;
    border-left: 5px solid #EB9D42;
    padding-left: 1.5rem;
    font-size: clamp(1.1rem, 0.671rem + 2.14vw, 1.7rem);
}
.subheading-02 {
    margin: 1.5rem 0;
    text-wrap: balance;
    word-break: keep-all;
    color: #EB9D42;
    border: 2px solid #EB9D42;
    padding-left: 1rem;
    font-size: clamp(1rem, 0.786rem + 1.07vw, 1.3rem);
}
.subheading-03 {
    margin: 1.5rem 0;
    text-wrap: balance;
    word-break: keep-all;
    color: #333;
    font-size: clamp(1rem, 0.714rem + 1.43vw, 1.4rem);
}
.subheading-04 {
    margin: 1.5rem 0;
    text-wrap: balance;
    word-break: keep-all;
    color: #EB9D42;
    font-weight: bold;
    font-size: clamp(1rem, 0.714rem + 1.43vw, 1.4rem);
}



/*--------------------------------------
 下マージン設定
--------------------------------------*/
.bottom-space-00 {
    margin-bottom: 0 !important;
}

.bottom-space-01 {
  margin-bottom: 1rem !important;
}
.bottom-space-01 + * {
  margin-top: 1rem !important;
}

.bottom-space-02 {
    margin-bottom: 2rem !important;
}
.bottom-space-02 + * {
  margin-top: 2rem !important;
}

.bottom-space-03 {
    margin-bottom: 3rem !important;
}
.bottom-space-03 + * {
  margin-top: 3em !important;
}

.bottom-space-04 {
    margin-bottom: 4rem !important;
}
.bottom-space-04 + * {
  margin-top: 4em !important;
}

.bottom-space-05 {
    margin-bottom: 5rem !important;
}
.bottom-space-05 + * {
  margin-top: 5em !important;
}

.bottom-reset {
  margin-bottom: 0 !important;
}
.top-reset {
  margin-top: 0 !important;
}




/*========================
　サイズ
========================*/
.size-15{ width: 15%; }
.size-20{ width: 20%; }
.size-25{ width: 25%; }
.size-30{ width: 30%; }
.size-35{ width: 35%; }
.size-40{ width: 40%; }
.size-45{ width: 45%; }
.size-50{ width: 50%; }
.size-55{ width: 55%; }
.size-60{ width: 60%; }
.size-65{ width: 65%; }
.size-70{ width: 70%; }
.size-75{ width: 75%; }
.size-80{ width: 80%; }
.size-85{ width: 85%; }
.size-90{ width: 90%; }
.size-95{ width: 95%; }
.size-98{ width: 98%; }
.size-100{ width: 100%; }

img.size-15{ width: 15% !important ; }
img.size-20{ width: 20% !important ; }
img.size-25{ width: 25% !important ; }
img.size-30{ width: 30% !important ; }
img.size-35{ width: 35% !important ; }
img.size-40{ width: 40% !important ; }
img.size-45{ width: 45% !important ; }
img.size-50{ width: 50% !important ; }
img.size-55{ width: 55% !important ; }
img.size-60{ width: 60% !important ; }
img.size-65{ width: 65% !important ; }
img.size-70{ width: 70% !important ; }
img.size-75{ width: 75% !important ; }
img.size-80{ width: 80% !important ; }
img.size-85{ width: 85% !important ; }
img.size-90{ width: 90% !important ; }
img.size-95{ width: 95% !important ; }
img.size-98{ width: 98% !important ; }
img.size-100{ width: 100% !important ; }



/*--------------------------------------
 画像
--------------------------------------*/
figcaption {
  padding: 0.5rem 0 0;
  font-size: 0.8rem;
  text-align: center;
  text-wrap: balance;
}
@media screen and (width <= 767px){
  figcaption {
    font-size: 1rem;
  }
}

 .photo-01 {
   padding: 3px;
   border: 1px solid #DDDDDD;
   background: #FFF;
  }
 
 .photo-02 {
   border: 1px solid #DDDDDD;
  }
  
img.inherit-img {
      max-width: 100% !important;
      width: auto !important;
  }
  @media screen and (max-width: 767px) {
      img.rwd-100{
          width: 100% !important;
      }
      img.rwd-90{
          width: 90% !important;
      }
      img.rwd-80{
          width: 80% !important;
      }
      img.rwd-70{
          width: 70% !important;
      }
      img.rwd-60{
          width: 60% !important;
      }
      img.rwd-50{
          width: 50% !important;
      }
      img.rwd-40{
          width: 40% !important;
      }
      img.rwd-30{
          width: 30% !important;
      }
      img.inherit-img {
          max-width: 100% !important;
          width: auto !important;
      }
  }

 

/*--------------------------------------
 注釈関連 2023/04/19
--------------------------------------*/
.note-01,
ol ul.note-01 { /* 注記 ※ */
    padding: 0 0 0 1.6rem;
    counter-reset: number;
}
.note-01 li,
ol ul.note-01 li {
	position: relative;
	list-style: none;
}
.note-01 li:before,
ol ul.note-01 li:before {
	counter-increment: number;
	content: "※";
	position: absolute;
	left: -1.6rem;
	width: 1.4em;
	height: 1em;
}
.align-center ul.note-01 li {
	display: inline-block;
}
.align-center ul.note-01 li:before {
	top: 0;
}


p.note-01{
	position: relative;
  padding: 0 0 0 1.6rem;
  display: block;
}
p.note-01:before {
	content: "※";
	position: absolute;
  left: -0;
}

span.note-01{
  position: relative;
  padding: 0 0 0 1.6em;
  display: inline-block;
}
span.note-01:before {
  content: "※";
  position: absolute;
  left: -1.6rem;
}


.note-02 { /* 注記 ※1 */
  padding: 0 0 0 1.6rem;

	counter-reset: number;
}
.note-02 li{
	position: relative;
	list-style: none;
}
.note-02{
    font-size: initial;
}
.note-02 li:before {
	counter-increment: number;
	content: "※"counter(number)"";
	position: absolute;
	top: 5px;
	left: -3.8rem;
	font-size: 0.8rem;
	width: 3.5rem;
	text-align: right;
}




/* 文字位置
--------------------------------------*/
.align-right {
    text-align: right !important;
}
.align-center {
    text-align: center !important;
}
.align-left {
    text-align: left !important;
}
.align-top {
    vertical-align: top !important;
}
.align-middle {
    vertical-align: middle !important;
}
.align-bottom {
    vertical-align: baseline !important;
}
.align-right img {
	margin: 0 0 0 auto !important;
}
.align-center img {
    margin: 0 auto !important;
}
.align-left img {
    margin: auto 0 0 0 !important;
}




/*--------------------------------------
 リスト 2023/04/18
--------------------------------------*/
ul, ol {
  padding: 0 0 0 1.5rem;
  padding: 0 0 0 1.1rem;
}

ul,
ol {
  > li,
  > ul li,
  > ol li {
    position: relative;
    margin: 1rem 0;
    padding: 0 0 0 0;
    text-indent: 0;
  }
}

ul li {
  list-style-type: disc;
}
ul.list-dot li {
  margin-left: 0.5rem;
  list-style-type: none;
  position: relative;
}
ul.list-dot li:before {
  content: "・";
  font-size: 2.5rem;
  font-weight: bold;
  color: #999;
  line-height: 0;
  position: absolute;
  left: -2.1rem;
  top: 0.9rem;
}

.content ul > li:last-child,
.content ol > li:last-child {
  margin-bottom: 0;
}

/* 通常番号リスト */
ol.number-list-01 {
  padding-left: 1.4rem;
  counter-reset: number;
}
ol.number-list-01 > li{
  position: relative;
  list-style: none;
  padding-left: 0.2rem;
}
ol.number-list-01 > li:before {
  counter-increment: number;
  content: counter(number)". ";
  position: absolute;
  top: 0;
  left: -3.2rem;
  width: 3rem;
  text-align: right;
}
/* カッコ数字 */
ol.number-list-02 {
  padding-left: 1.6rem;
  counter-reset: number;
}
ol.number-list-02 > li {
  position: relative;
  list-style: none;
}
ol.number-list-02 > li:before{
  counter-increment: number;
  content: "("counter(number)")";
  font-size: inherit;
  background: inherit;
  color: #555;
  position: absolute;
  top: 0;
  left: -2.6rem;
  width: 3rem;
  border: inherit;
  border-radius: inherit;
  text-align: inherit;
  text-align: center;
}

/* 丸数字 */
ol.number-list-03 {
  padding-left: 1.1rem;
  counter-reset: number;
}
ol.number-list-03 > li {
  position: relative;
  list-style: none;
  padding-left: 0.5rem;
}
ol.number-list-03 > li:before {
  counter-increment: number;
  content: counter(number);
  font-size: 0.7rem;
  background:#fff;
  color:#222;
  position: absolute;
  top: 0.4rem;
  left: -1.6em;
  width: 1.4em;
  height: 1.4em;
  border: 1px solid #222;
  border-radius: 50%;
  text-align: center;
  line-height: 1.5;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  letter-spacing: -1px;
}



/*--------------------------------------
 任意に変えるリスト 2023/07
--------------------------------------*/

.note-data {
  margin-left: -1.1rem;
  counter-reset: number;
}
.note-data > li {
  position: relative;
  list-style-type: none;
}

.note-data-01 > li,
li.note-data-01 {
  padding-left: 1.1rem;
}
.note-data-02 > li,
li.note-data-02 {
  padding-left: 2.1em;
}
.note-data-03 > li,
li.note-data-03 {
  padding-left: 3em;
}

.note-data [data-note-type]:before {
  content: attr(data-note-type);
  position: absolute;
  left: 0;
}
.note-data [data-note-number]:before {
  counter-increment: number;
  content: attr(data-note-number)counter(number);
  position: absolute;
  left: 0;
}



/* リスト行間調整 2023/04/18 */

.list-space-00 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.list-space-00 > li {
  margin-top: 0;
  margin-bottom: 0;
}

.list-space-01,
.list-space-01 > li {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.list-space-01 > li,
.list-space-01 > li > p,
.list-space-01 > li > div,
.list-space-01 > li > table,
.list-space-01 > li > figure,
.list-space-01 > li > ol,
.list-space-01 > li > ul,
.list-space-01 > li > .l-item {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.list-space-02,
.list-space-02 > li {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.list-space-02 > li,
.list-space-02 > li > p,
.list-space-02 > li > div,
.list-space-02 > li > table,
.list-space-02 > li > figure,
.list-space-02 > li > ol,
.list-space-02 > li > ul,
.list-space-02 > li > .l-item {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.list-space-03,
.list-space-03 > li {
    margin-top: 3rem;
    margin-bottom: 3rem;
}

.list-space-03 > li,
.list-space-03 > li > p,
.list-space-03 > li > div,
.list-space-03 > li > table,
.list-space-03 > li > figure,
.list-space-03 > li > ol,
.list-space-03 > li > ul,
.list-space-03 > li > .l-item {
  margin-top: 3rem;
  margin-bottom: 3rem;
}




/*--------------------------------------
 テキスト装飾関連
--------------------------------------*/
strong{/* 重要な事 */
    font-size: 110%;
    padding: 0.2rem 0.5rem;
    margin: 0 0.5rem;
    font-weight: 700;
    background: #FAE450;
}
em{/* 強調 */
    font-size: 110%;
    font-weight: bold;
    font-style: normal;
    padding: 0 0.2rem;
}
.text-bold {
    font-weight: bold;
}
.text-black {
    color: #333;
}
.text-blue {
    color: #094D9C;
}
.text-red {
    color: #EE3521;
}
.text-orange {
    color: #FF9900;
}
.content .text-small {
    font-size: clamp(0.7rem, 0.466rem + 0.9vw, 0.9rem);
}
.content .text-smaller {
    font-size: clamp(0.6rem, 0.366rem + 0.9vw, 0.8rem);
}
.content .text-big {
    font-size: clamp(1.1rem, 0.983rem + 0.45vw, 1.2rem);
}
.content .text-bigger{
	font-size: clamp(1.3rem, 1.183rem + 0.45vw, 1.4rem);
}
.content .text-biggest {
    font-size: clamp(1.5rem, 1.383rem + 0.45vw, 1.6rem);
}

.content .icon-tel {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  color: #FF9900;
  background: url("../img/icon_tel_white.png") no-repeat left center;
  background-size: contain;
  padding: 0 0 0 4rem;
  text-decoration: none;
}
.icon-tel a {
  text-decoration: none;
}



/*========================
テーブル
========================*/
table {
  border: 1px solid #ccc;
  border-collapse: collapse;
  padding: 0;
  table-layout: fixed;
  table-layout: auto;
  width: 100%;
  font-size: clamp(0.875rem, 0.79rem + 0.43vw, 1.11rem);
}
table thead th {
    background: #F1F1F1;
}
table th {
    background: #FBFAF9;
    text-align: center;
}
table tr {
  border: 1px solid #ddd;
  padding: .35em;
}
table td {
  background-color: #FFF;
}
table th,
table td {
  padding: .625rem;
  border-right: 1px solid #ccc;
  text-align: center;
}

table.table-noborder,
table.table-noborder tr,
table.table-noborder th,
table.table-noborder td {
    border: 0;
    background: transparent;
    padding-left: 0;
    text-align: left;
}

/* テーブル縦表示（２桁） */
@media screen and (max-width: 767px) {
    table.recombination {
        border: 1px solid #D2DCE0;
        border-collapse: collapse;
        width: 100% !important;
    }
    table.recombination > tbody > thead > tr > th,
    table.recombination > tbody > tr > th,
    table.recombination > tbody > tr > td {
        display: block;
        width: 100% !important;
        border: 0;
    }
    table.recombination > tbody > tr > th{
        border-bottom: 1px solid #D2DCE0;
    }
    table.recombination > tbody > tr:last-child > td {
        border: 0;
    }
    
    .table-rp th,
    .table-rp td{
        min-width: 170px;
    }
}  

/* レスポンシブ
--------------------------------------*/
@media screen and (max-width: 767px) {
    /* スクロールバー用 */
    .sp-scroll{
        overflow-x: auto;
        margin-bottom: 1.5rem;
    }
    .sp-scroll table.scrolltable{
      margin-bottom: 0;
        width: 1024px;
    }
    .sp-scroll.nowrap{/* 改行なし */
      white-space: nowrap;
    }
    /* レスポンシブ用　上下 */
    .recombination > tr > th,
    .recombination > tr > td{
        display: block;
        width: 100%;
    }
}

table th *:last-child,
table th *:last-child *:last-child,
table td *:last-child,
table td *:last-child *:last-child {
  margin-bottom: 0 !important;
}

/*========================
テーブル内の文字揃え（デフォルトはセンター）
========================*/

/* thead センター：thセンター： td 左 */
table.table-align-01 td {
    text-align: left;
}
/* thead センター ：th 右：td 左 */
table.table-align-02 thead th {
    text-align: center;
}
table.table-align-02 th {
    text-align: right;
}
table.table-align-02 td {
    text-align: left;
}
/* thead センター ：th 右：td センター */
table.table-align-03 thead th {
    text-align: center;
}
table.table-align-03 th {
    text-align: right;
}

/* thead th td すべて右 */
table.table-align-right thead th,
table.table-align-right th,
table.table-align-right td {
    text-align: right;
}

/* thead th td すべて左 */
table.table-align-left thead th,
table.table-align-left th,
table.table-align-left td {
    text-align: left;
}

/* 個別設定 */
table th.align-right,
table td.align-right {
    text-align: right;
}
table th.align-center,
table td.align-center {
    text-align: center;
}
table th.align-left,
table td.align-left {
    text-align: left;
}


/*========================
td内マージン調整 2023/04/20
========================*/

td div,
td p,
td ul,
td ol,
td table,
td figure {
	margin-bottom: 1rem;
}

td .bottom-space-00 {
    margin-bottom: 0 !important;
}
td .bottom-space-01 {
    margin-bottom: 1rem !important;
}
td .bottom-space-02 {
    margin-bottom: 2rem !important;
}
td .bottom-space-03 {
    margin-bottom: 3rem !important;
}




/*========================
フッタ
========================*/
.footer {
    text-align: center;
    padding: 1rem;
    color: #666;
    margin: 100px auto 0;
    /*white-space: nowrap;*/
    font-size: clamp(0.4rem, 0.255rem + 0.73vw, 0.8rem);
}

@media screen and (width <= 767px){
	.footer {
    margin-top: 30px;
}

}

/*========================
gridbox
========================*/

/* ボックス横並び関連
　ボックス幅を12分割し、間隔は32pxとする
--------------------------------------*/
.grid-box {
    margin: 0 -16px 1.5rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem 32px;
    position: relative;
    justify-content: center;
}
.grid-box.left-start {
    justify-content: flex-start;
}
.grid-box.reverse {
    flex-direction: row-reverse;
}

.grid-box img {
    max-width: 100%;
    vertical-align: bottom;
}

.grid-01 {
  flex-basis: calc( 100% * 1/12 - 32px );
}
.grid-02 {
  flex-basis: calc( 100% * 1/6 - 32px );
}
.grid-03 {
  flex-basis: calc( 100% * 1/4 - 32px );
}
.grid-04 {
  flex-basis: calc( 100% * 1/3 - 32px );
}
.grid-05 {
  flex-basis: calc( 100% * 5/12 - 32px);
}
.grid-06 {
  flex-basis: calc( 100% * 1/2 - 32px );
}
.grid-07 {
  flex-basis: calc( 100% * 7/12 - 32px );
}
.grid-08 {
  flex-basis: calc( 100% * 2/3 - 32px );
}
.grid-09 {
  flex-basis: calc( 100% * 3/4 - 32px );
}
.grid-10 {
  flex-basis: calc( 100% * 5/6 - 32px );
}
.grid-11 {
  flex-basis: calc( 100% * 11/12 - 32px );
}
.grid-12 {
  flex-basis: calc( 100% - 32px );
}

@media screen and (width <= 767px){
    /* １個で折り返し */
  .grid-box.fold-01 > div {
    flex-basis: calc( 100% - 32px );
  }
    /* 2個で折り返し */
  .grid-box.fold-02 > div {
    flex-basis: calc( 50% - 32px );
  }
    /* 3個で折り返し */
  .grid-box.fold-03 > div {
    flex-basis: calc( 100% * 1/3 - 32px );
  }
}


/*========================
# レスポンシブ表示でスライドショーになる横並び画像（2023年7月）
========================*/
.slide-set img {
  width: 100%;
}
@media print, screen and (width >= 768px){
  .navigation {
    display: none;
  }
  .slide-set {
    margin: 0 -16px 3rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem 32px;
    position: relative;
    justify-content: center;
  }
  .slide-item-03 {
    flex-basis: calc( 100% * 1/3 - 32px );
  }
  .slide-item-04 {
    flex-basis: calc( 100% * 1/4 - 32px );
  }
  .nextline {
    background-image: url("../../img/nextline.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 8%;
  }
}

@media screen and (width <= 767px){
  .slide-set {
    position: relative;
    overflow: hidden;
    margin-bottom: 1.5rem;
    /* スライドが移動する部分 */
    transition: transform 0.5s ease-in-out;
  }
  .slide-item-03,
  .slide-item-04 {
    display: none;
  }
  .slide-item-03.active,
  .slide-item-04.active {
    display: block;
    width: 100%;
    /* スライドのアニメーション */
    transition: transform 0.5s ease-in-out;
  }
  .navigation {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    width: 100%;
    z-index: 1;
  }
  .navigation svg {
    width: 30px;
    height: 30px;
    fill: #FF9900;
    cursor: pointer;
  }
}


/*========================
枠
========================*/

.outer-01 { /* 枠線付きボックス */
    border: 1px #d9dee1 solid;
    border-radius: 10px;
    padding: 1.5rem;
}
.outer-02 { /* 背景付きボックス */
    background: #F7EBD5;
    border-radius: 10px;
    padding: 1.5rem;
}
