@charset "UTF-8";
.pc {
  display: block !important; }
  @media only screen and (max-width: 767px) {
    .pc {
      display: none !important; } }

.sp {
  display: none !important; }
  @media only screen and (max-width: 767px) {
    .sp {
      display: block !important; } }

.tb {
  display: none !important; }
  @media only screen and (max-width: 991px) {
    .tb {
      display: block !important; } }

.mt0 {
  margin-top: 0px !important; }

.mr0 {
  margin-right: 0px !important; }

.mb0 {
  margin-bottom: 0px !important; }

.ml0 {
  margin-left: 0px !important; }

.pt0 {
  padding-top: 0px !important; }

.pr0 {
  padding-right: 0px !important; }

.pb0 {
  padding-bottom: 0px !important; }

.pl0 {
  padding-left: 0px !important; }

.mt10 {
  margin-top: 10px !important; }

.mr10 {
  margin-right: 10px !important; }

.mb10 {
  margin-bottom: 10px !important; }

.ml10 {
  margin-left: 10px !important; }

.pt10 {
  padding-top: 10px !important; }

.pr10 {
  padding-right: 10px !important; }

.pb10 {
  padding-bottom: 10px !important; }

.pl10 {
  padding-left: 10px !important; }

.mt20 {
  margin-top: 20px !important; }

.mr20 {
  margin-right: 20px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.ml20 {
  margin-left: 20px !important; }

.pt20 {
  padding-top: 20px !important; }

.pr20 {
  padding-right: 20px !important; }

.pb20 {
  padding-bottom: 20px !important; }

.pl20 {
  padding-left: 20px !important; }

.mt30 {
  margin-top: 30px !important; }

.mr30 {
  margin-right: 30px !important; }

.mb30 {
  margin-bottom: 30px !important; }

.ml30 {
  margin-left: 30px !important; }

.pt30 {
  padding-top: 30px !important; }

.pr30 {
  padding-right: 30px !important; }

.pb30 {
  padding-bottom: 30px !important; }

.pl30 {
  padding-left: 30px !important; }

.mt40 {
  margin-top: 40px !important; }

.mr40 {
  margin-right: 40px !important; }

.mb40 {
  margin-bottom: 40px !important; }

.ml40 {
  margin-left: 40px !important; }

.pt40 {
  padding-top: 40px !important; }

.pr40 {
  padding-right: 40px !important; }

.pb40 {
  padding-bottom: 40px !important; }

.pl40 {
  padding-left: 40px !important; }

.mt50 {
  margin-top: 50px !important; }

.mr50 {
  margin-right: 50px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.ml50 {
  margin-left: 50px !important; }

.pt50 {
  padding-top: 50px !important; }

.pr50 {
  padding-right: 50px !important; }

.pb50 {
  padding-bottom: 50px !important; }

.pl50 {
  padding-left: 50px !important; }

.mt60 {
  margin-top: 60px !important; }

.mr60 {
  margin-right: 60px !important; }

.mb60 {
  margin-bottom: 60px !important; }

.ml60 {
  margin-left: 60px !important; }

.pt60 {
  padding-top: 60px !important; }

.pr60 {
  padding-right: 60px !important; }

.pb60 {
  padding-bottom: 60px !important; }

.pl60 {
  padding-left: 60px !important; }

.mt70 {
  margin-top: 70px !important; }

.mr70 {
  margin-right: 70px !important; }

.mb70 {
  margin-bottom: 70px !important; }

.ml70 {
  margin-left: 70px !important; }

.pt70 {
  padding-top: 70px !important; }

.pr70 {
  padding-right: 70px !important; }

.pb70 {
  padding-bottom: 70px !important; }

.pl70 {
  padding-left: 70px !important; }

.mt80 {
  margin-top: 80px !important; }

.mr80 {
  margin-right: 80px !important; }

.mb80 {
  margin-bottom: 80px !important; }

.ml80 {
  margin-left: 80px !important; }

.pt80 {
  padding-top: 80px !important; }

.pr80 {
  padding-right: 80px !important; }

.pb80 {
  padding-bottom: 80px !important; }

.pl80 {
  padding-left: 80px !important; }

.mt90 {
  margin-top: 90px !important; }

.mr90 {
  margin-right: 90px !important; }

.mb90 {
  margin-bottom: 90px !important; }

.ml90 {
  margin-left: 90px !important; }

.pt90 {
  padding-top: 90px !important; }

.pr90 {
  padding-right: 90px !important; }

.pb90 {
  padding-bottom: 90px !important; }

.pl90 {
  padding-left: 90px !important; }

.mt100 {
  margin-top: 100px !important; }

.mr100 {
  margin-right: 100px !important; }

.mb100 {
  margin-bottom: 100px !important; }

.ml100 {
  margin-left: 100px !important; }

.pt100 {
  padding-top: 100px !important; }

.pr100 {
  padding-right: 100px !important; }

.pb100 {
  padding-bottom: 100px !important; }

.pl100 {
  padding-left: 100px !important; }

/* Scss Document */
.container-fluid {
  padding: 0; }

h1 {
  font-size: 4rem; }
  @media only screen and (max-width: 991px) {
    h1 {
      font-size: 3rem; } }
  @media only screen and (max-width: 767px) {
    h1 {
      font-size: 1.9rem; } }

h2.column-ttl {
  background: url(../image/cube-icon.png) no-repeat left 0.3rem;
  background-size: 12px 12px;
  margin-bottom: 10px;
  padding-left: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  font-family: "M+ C Type-1 (basic latin) bold", "M+ Type-1 (general-j) bold", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif; }
  @media only screen and (max-width: 991px) {
    h2.column-ttl {
      font-size: 1.6rem;
      padding-left: 16px; } }

h2.ttl-icon {
  background: url(../image/cube-icon2.png) no-repeat left 0.3rem;
  background-size: 12px 12px;
  margin-bottom: 10px;
  padding-left: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  font-family: "M+ C Type-1 (basic latin) bold", "M+ Type-1 (general-j) bold", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif; }
  @media only screen and (max-width: 991px) {
    h2.ttl-icon {
      font-size: 1.6rem;
      padding-left: 16px; } }

h3.ttl-txt {
  margin: 20px 0;
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff; }

p {
  font-size: 1.6rem;
  margin-bottom: 20px;
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 2.2rem;
  letter-spacing: 0.01rem; }
  @media only screen and (max-width: 991px) {
    p {
      font-size: 1.4rem; } }

dl, ul {
  font-size: 1.6rem;
  margin-bottom: 20px;
  color: #fff; }
  @media only screen and (max-width: 991px) {
    dl, ul {
      font-size: 1.4rem; } }

ul {
  list-style-type: circle; }

img {
  width: 100%; }

.div-center{
    font-size: 1.2rem;
    margin-bottom: 1px;
    text-align: center;
    text-justify: inter-ideograph;
    letter-spacing: 0.01rem;
    color: #fff; }

.bg-blk70 {
  background-color: rgba(0, 0, 0, 0.7); }
  .bg-blk70 p, .bg-blk70 h2 {
    color: #fff; }
  .bg-blk70 h2 {
    font-size: 1.6rem;
    font-weight: bold; }
  .bg-blk70 h3, .bg-blk70 h4 {
    font-size: 1.6rem;
    font-weight: bold;
    color: #fff; }
  .bg-blk70 p {
    font-size: 1.4rem;
    font-family: "M+ C Type-1 (basic latin) light", "M+ Type-1 (general-j) light", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif; }
    .bg-blk70 p a {
      color: #fff; }
    .bg-blk70 p a.btm_line {
      text-decoration: underline; }
    .bg-blk70 p a.btm_line:hover {
      text-decoration: none; }
    .bg-blk70 p a.detail-link {
      color: #fff;
      text-decoration: underline; }
  .bg-blk70 dd, .bg-blk70 li {
    font-family: "M+ C Type-1 (basic latin) light", "M+ Type-1 (general-j) light", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    margin-bottom: 10px; }
  .bg-blk70 li {
    list-style-type: disc;
    list-style-position: outside;
    margin-left: 2rem; }
  .bg-blk70 ul.p_list li, .bg-blk70 ul#accordion_menu li {
    list-style-type: none;
    list-style-position: inherit;
    margin-left: 0; }

ul.p_list li .row {
  width: 100%; }

article.paragraph {
  margin: 0 0 40px; }

.f-fix {
  width: 100%;
  padding: 20px 20px 10px;
  background-color: #000;
  color: #fff;
  font-size: 1.6rem; }

ul, li {
  margin: 0;
  padding: 0;
  list-style: none; }

#accordion_menu {
  margin-top: 0px; }
  #accordion_menu h2 {
    padding: 0;
    font-size: 1.5rem;
    font-weight: bold; }
  #accordion_menu p {
    font-size: 1.4rem;
    font-weight: normal;
    padding: 0 10px; }

#accordion_menu > li {
  padding: 10px;
  border-top: #000 1px solid; }

#accordion_menu > li:first-child {
  border-top: none; }

#accordion_menu > li:last-child {
  border-bottom: #000 1px solid; }

#accordion_menu a {
  color: #fff; }

#accordion_menu a[data-toggle="collapse"] {
  display: block;
  padding: 10px 40px 10px 10px;
  text-decoration: none;
  position: relative; }

#accordion_menu a[data-toggle="collapse"]:hover {
  background: #4C4C4C; }

#accordion_menu a[data-toggle="collapse"]::after {
  content: "";
  display: block;
  width: 13px;
  height: 13px;
  border-top: #949494 3px solid;
  border-right: #949494 3px solid;
  position: absolute;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto; }

#accordion_menu a[aria-expanded=false]::after {
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  transition-duration: 0.3s; }

#accordion_menu a[aria-expanded=true]::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  transition-duration: 0.3s; }

/* toggleスイッチ */
input {
  display: none; }

input + label,
input + label::before,
input + label::after {
  -webkit-transition: all .2s;
  transition: all .2s; }

input + label {
  display: inline-block;
  position: relative;
  width: 50px;
  height: 26px;
  border-radius: 24px;
  cursor: pointer; }

input + label::before {
  display: block;
  content: attr(data-off-label);
  position: absolute;
  top: 14px;
  right: 7px;
  color: #fff;
  font-family: Arial, sans-serif;
  font-size: 18px; }

input + label::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 22px;
  height: 22px;
  background-color: #fff;
  border-radius: 50%; }

input:checked + label::before {
  content: attr(data-on-label);
  left: 7px;
  right: auto;
  color: #fff; }

input:checked + label::after {
  left: 25px;
  background-color: #f7f7f7; }

/* toggle01 */
#toggle01 + label {
  background-color: #888E90; }

#toggle01 + label::before {
  color: #aaa; }

#toggle01:checked + label {
  background-color: #3498db; }

#toggle01:checked + label::before {
  color: #fff; }

/* how to */
.bg-blk70 ul.p_list li {
  margin-bottom: 0; }

ul.p_list li p {
  margin-bottom: 0; }

ul.p_list li a div.arrow-r {
  position: relative; }

ul.p_list li a div.arrow-r::after {
  content: "";
  display: block;
  width: 13px;
  height: 13px;
  border-top: #949494 3px solid;
  border-right: #949494 3px solid;
  position: absolute;
  right: -15px;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg); }

.ico-01 {
  width: 32px;
  height: 32px;
  margin-top: 30%; }

.ico-02 {
  width: 26px;
  height: 38px;
  margin-top: 10%; }

.ico-03 {
  width: 25.33px;
  height: 38px;
  margin-top: 20%; }

.ico-04 {
  width: 38px;
  height: 29.86px;
  margin-top: 10%; }

.howto-img {
  width: 80%;
  margin: 20px auto; }

/*----------------------------------------------------
	element style
----------------------------------------------------*/
html {
  scroll-behavior: smooth;
  font-size: 10px; }

html, body {
  margin: 0;
  padding: 0; }

body {
  background: #fff;
  color: #000;
  font-family: "M+ C Type-1 (basic latin) Regular", "M+ Type-1 (general-j) Regular", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif; }

a:link {
  color: #231815;
  transition: 0.3s; }
a:visited {
  color: #231815; }
a:hover {
  text-decoration: none;
  color: #1a274b; }
a:active {
  color: #231815; }

ul {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  ul li {
    display: list-item;
    list-style-type: none; }

/*----------------------------------------------------
	contents
----------------------------------------------------*/
#wrapper {
  overflow: hidden; }

.contents {
  width: 1000px;
  margin: 0 auto;
  padding: 60px 0; }
  @media only screen and (max-width: 991px) {
    .contents {
      width: 90%;
      margin: 0 auto;
      padding: 0;
      box-sizing: border-box; } }

.container {
  padding: 20px 20px; }

.column-img {
  width: 570px;
  margin: 70px auto 40px; }
  @media only screen and (max-width: 991px) {
    .column-img {
      width: 100%;
      margin: 30px auto; } }

.blue-frame {
  width: 100%;
  margin: 40px auto 20px;
  padding: 30px 50px;
  background-color: #E4F1F8;
  border-radius: 4px; }
  @media only screen and (max-width: 991px) {
    .blue-frame {
      padding: 20px 15px; } }

.txt-bold {
  font-weight: bold;
  font-family: "M+ C Type-1 (basic latin) bold", "M+ Type-1 (general-j) bold", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif; }

.signature {
  text-align: right; }

ul.p_list {
  margin: 0px 0; }
  ul.p_list a {
    color: #fff; }
  ul.p_list li {
    padding: 20px;
    color: #fff;
    border-bottom: 1px solid #000; }
    @media only screen and (max-width: 991px) {
      ul.p_list li {
        padding: 20px 15px; } }
    ul.p_list li .area-tag {
      margin-left: 10px; }
    ul.p_list li h3 {
      margin-top: 10px;
      font-size: 1.6rem; }
  ul.p_list .p_list_txt {
    padding: 0; }

ul.p_list2 {
  margin: 40px 0; }
  ul.p_list2 a {
    color: #fff; }
  ul.p_list2 li {
    padding: 20px;
    color: #fff;
    border-bottom: 1px solid #000;
    list-style-type: none; }
    @media only screen and (max-width: 991px) {
      ul.p_list2 li {
        padding: 20px 15px; } }
    ul.p_list2 li .area-tag {
      margin-left: 10px; }
    ul.p_list2 li h3 {
      margin-top: 10px;
      font-size: 1.6rem; }
  ul.p_list2 .p_list_txt {
    padding: 0; }

.date {
  font-size: 1.4rem;
  color: #fff; }

.area-tag {
  background-color: #888E90;
  font-size: 1.2rem;
  padding: 3px 10px;
  border-radius: 300px;
  display: inline-block;
  color: #fff; }

.detail-head .date {
  text-align: right; }

/*----------------------------------------------------
	column
----------------------------------------------------*/
.column {
  margin-top: 40px; }


  .detail-video {
    padding: 20px 0;
  }
  .detail-video video {
    width: 100%;
  }
