@charset "utf-8";
/* ============================ 
common
===============================*/
html { 
    font-size: 62.5%;   /* 1remを10pxにする下処理 */
}

body {
    font-family: /* サイトで使うローカルフォント設定 */
        "Noto Sans JP", 
        Arial, 
        sans-serif;
    font-style: normal;
    color: #2F2F2F;
    font-size: 1.6rem;
    background-color: #19676d; /* サイト背景の色 */
    line-height: 1.5;  /* 通常の行間 */
}

img {
    max-width: 100%; /* ★元画像の横幅100％のサイズマックスまで対応★ */
    height: auto;
}

h1{
    font-weight:700;
    font-size:5rem;
    color:#140e64;
    text-align: center;
}

h2{
    font-weight:700;
    font-size:1.6rem;
    color:#ff6347;
    margin-left: 60px;
}

h3 { 
    font-weight:700;
    color: #2F2F2F;
    font-size: 1.6rem;
   }

h4 {
    font-size:1.6rem;
    font-weight:700;
    color:#1943a0;
    text-align: center;
}

p {
    color: #2F2F2F;
    font-size: 1.6rem;
    margin: 0 60px 10px 60px;
    line-height: 1.8;  /*行間 */
}

.midashi_big {
      font-size: 2rem;
}

.midashi_text {/* 見出し */
    font-size: 1.8rem;
    font-weight:700;
    background:#DEEBF7; /*背景色*/
    border-left: solid 10px #38b3f2;
    margin: 10px 20px;
    padding: 5px 20px ;
  }

.midashi_text_zagaku {/* 見出し */
    font-size: 1.8rem;
    font-weight:700;
        background:#caf8ce; /*背景色*/
        border-left: solid 10px #045c33;
    margin: 10px 20px;
    padding: 5px 20px ;
  }

.midashi_text_zitugi {/* 見出し */
    font-size: 1.8rem;
    font-weight:700;
        background:#ffde20; /*背景色*/
        border-left: solid 10px #e9920f;
    margin: 10px 20px;
    padding: 5px 20px ;
  }


.space {/* スペース */
    padding: 10px;
}

.sp-only {/* スマホ時だけ改行 */
    display: none;
  }


@media screen and (max-width: 768px){ /*スマホ対応 */
    h1{
        font-size:1.5rem;
        font-weight:700;
    }
    
    h2 {
        font-size:1.4rem;
        margin-left: 30px;
    }
    h4 {
        font-size:1.1rem;
        font-weight:700;
    }


    .sp-only {/*スマホの時に改行 */
        display: block;
      }

    p {
        color: #2F2F2F;
        font-size: 1.2rem;
        margin: 0 30px 30px 30px;
        line-height: 1.8;  /*行間 */
    }



    .midashi_text {/* 見出し */
        font-size: 1.4rem;
        font-weight:700;;
        background:#DEEBF7; /*背景色*/
        border-left: solid 10px #38b3f2;
        margin: 10px 20px;
        padding: 5px 10px ;
      }

          .midashi_text_zagaku {/* 見出し */
        font-size: 1.4rem;
        font-weight:700;;
        background:#caf8ce; /*背景色*/
        border-left: solid 10px #045c33;
        margin: 10px 20px;
        padding: 5px 10px ;
      }

      .midashi_text_zitugi {/* 見出し */
        font-size: 1.4rem;
        font-weight:700;;
        background:#ffde20; /*背景色*/
        border-left: solid 10px #e9920f;
        margin: 10px 20px;
        padding: 5px 10px ;
      }
  }

/* ============================ 
header
===============================*/
.header {
	max-width: 1200px;
	margin: 0 auto;
	padding: 48px 60px 24px;
	display: flex;
	justify-content: right;
}

.nav__list {
	margin-top: 0; 
	display: flex; /*メニューを横並びにする */
}

.nav__item a {
	margin-top: 0;
    font-size:1.8rem;
	color: #C3C3C3;
	font-weight: 700;
	line-height: 1.3; 
	margin-left: 32px;
	display: inline-block;/*要素に合わせて*/
	text-decoration:none;
	position: relative; /*右寄せ */
}
.nav__item a::after{
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 0;
  height: 1px;
  background-color:  #dd8532;
  transition: .3s;
}
.nav__item a:hover::after{
  width: 100%;
}
.nav__item a:hover{
	color:  #dd8532;
  }


  @media screen and (max-width: 768px){ /*スマホ対応 */
    .header {
        margin: 0 auto;
        padding: 20px 20px 20px;
        display: flex;
        justify-content: right;
    }
	  
	.nav__item a {
	font-size:1.2rem;
	font-weight: 400;
	}	
}

/* ============================ 
base
===============================*/
.base {
    background-color: #fff;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 20px;
    border-radius: 20px;   /*角まる */
    font-size: 1.4rem;
}

.example { /*ul liの列 */
    list-style: disc;
    color: #2F2F2F;
    line-height: 30px;  /*行間 */
    font-size:1.6rem;
    margin: 0 60px 30px 80px;
}

.midashi_text  span {
    font-size:0.8em;
    padding-left: 20px;
}

.info {
    padding: 5px;
    max-height: 80px;
    background-color: #f3bb86;
    		overflow-y:auto;
}


  @media screen and (max-width: 768px){ /*スマホ対応 */
 .example li { /*ul liの列 */
        line-height: 1.8;  /*行間 */
        font-size:1.2rem; 
    }

    .example  {
      margin: 0 30px 30px 50px;
    }
    }

/* ============================ 表*/

.table__001 {
        font-size:1.6rem;
        width:95%;
        border-collapse:collapse;
        margin-left:auto;
        margin-right:auto;
        border: solid 3px  #05365e; /*表全体を線で囲う*/
    }

    .table__001 th{
        border:1px solid #05365e;
        text-align: center ;
        font-weight:700;
        background-color: #05365e;
        color: #FFF;
        /*border:1px solid #FFF;*/
        padding:1em;
    }
    
    .table__001 td{
        color: #2F2F2F;
        border:1px solid #05365e;
        height:100px;
        padding:1em;
    }
    
    
    .td_top {
        background-color: #cae3f7;
    }

    
    .table__001 table span {
                font-size:0.8em;
    }
/* ============================ 表2*/

	.table__002 {
		font-size:1.6rem;
		width:90%;
		border-collapse:collapse;
		margin-left:auto;
		margin-right:auto;
		border:solid 3px #7c7c7c; /*表全体を線で囲う*/
    }

    .table__002 th{
		/*border:1px solid #7c7c7c;*/
		text-align:center;
		font-weight:700;
		background-color:#7c7c7c;
		color:#FFF;
		border:1px solid #FFF;
		padding:1em;
    }
    
    .table__002 td{
        color:#2F2F2F;
        border:1px solid #7c7c7c;
        padding:0.5em;

    }
    
    .table__002 .td_top{
		padding:10px;
		background-color:#7c7c7c; 
		border:1px solid #FFF;
		color: #FFF;       
    }

	.table__002 .td_text2{
		text-align:center;
		color:#2F2F2F;
    }
	.table__002 .td_text3{
		padding-top:20px;
		text-align:center;
		color:#2F2F2F;
    }

    .table__002 table span{
		font-size:0.8em;
    }

/* ============================ 表_コース用*/
  table.brwsr2 {
margin: 0 auto;
width:90%;
border: none;
border-top: solid 1px #666;
border-bottom: solid 1px #666;
border-collapse: separate;
border-spacing: 0 10px;
background: #f5f5f5;
}

table.brwsr2 th.mae {
vertical-align: middle;
border-right: solid 1px #666;
margin: 0;
text-align: center;
font-size: 1.6rem;
font-weight: 700;
width: 20%;
}

table.brwsr2 td.data {
border: none;
color: #666;
font-size: 1.6rem;
line-height: 16px;
padding-left: 20px;
}

table.brwsr2 td:fst-child {
padding: 0 0 0 10px;
vertical-align: middle;
}

table.brwsr2 td.bar {
height: 1px;
width: 100%;
border-top: solid 1px #34495e;
}

@media screen and (max-width: 768px){ /*スマホ対応 */
  
table.brwsr2 th.mae .table__001 .base{
    font-size: 1.2rem;
}
table.brwsr2 td.data  {
    font-size: 1.2rem;
}
.table__002{
    font-size: 1.2rem;
}

}

/*==========================
注意事項
==========================*/
.box2 {
    position: relative;
    margin: 0 auto;
    padding: 0.5em 1em;
    border: solid 3px #ff5145;
    max-width: 90%;
	margin-top:27px;
}
.box2 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #ff5145;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}

.box2  p {
    margin: 0; 
    padding: 0 5px;
    font-size: 1.6rem;
    font-weight:700;

}

@media screen and (max-width: 768px){ /*スマホ対応 */
    .box2 .box-title {
        font-size: 14px;
    }
    .box2  p {
        font-size: 1.2rem;    
    }

}


/*==========================
対象部分
==========================*/
  /*2列表示にする*/
  .text_list {
    column-count: 3;
		margin-left: 60px;
        max-width: 60%;
}
@media screen and (max-width: 768px){ /*スマホ対応 */
    .text_list {
        column-count: 2;
            margin-left: 30px;
            max-width: 100%;
            font-size: 1.2rem;
        }
}
/*==========================
マップ部分
==========================*/
.google_map {
margin-left: 30px;
 position: relative;
 }

 .google_map::before {
    content: "";
    display: block;
    padding-top: calc(3 / 4 * 50%); /*4：3の場合*/
}

 .google_map iframe {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

/*==========================
見出し各ページの飾り
==========================*/

.midashi_text2 {
    border-bottom: solid 3px #cce4ff;
    position: relative;
    margin: 0 20px 10px 20px;
  }

  .midashi_text2 a{
    padding-left: 20px;
    font-size: 1.6rem;
    font-weight:700;
}
  
  .midashi_text2:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #5472cd;
    bottom: -3px;
    width: 20%;
  }


  .midashi_text2_zagaku {
    border-bottom: solid 3px #baf3bf;
    position: relative;
    margin: 0 20px 10px 20px;
  }

  .midashi_text2_zagaku a{
    padding-left: 20px;
    font-size: 2rem;
    font-weight:700;
}
  
  .midashi_text2_zagaku:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #045c33;
    bottom: -3px;
    width: 20%;
  }

  
  .midashi_text2_zitugi {
    border-bottom: solid 3px #ffde20;
    position: relative;
    margin: 0 20px 10px 20px;
  }

  .midashi_text2_zitugi a{
    padding-left: 20px;
    font-size: 2rem;
    font-weight:700;
}
  
  .midashi_text2_zitugi:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #e9920f;
    bottom: -3px;
    width: 20%;
  }

  
  .midashi_text3_zagaku {
    border-bottom: solid 3px #baf3bf;
    position: relative;
    margin: 0 20px 10px 20px;
  }

  .midashi_text3_zagaku a{
    padding-left: 20px;
    font-size: 1.6rem;
    font-weight:700;
}
  
  .midashi_text3_zagaku:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #045c33;
    bottom: -3px;
    width: 20%;
  }

  
  .midashi_text3_zitugi {
    border-bottom: solid 3px #ffde20;
    position: relative;
    margin: 0 20px 10px 20px;
  }

  .midashi_text3_zitugi a{
    padding-left: 20px;
    font-size: 1.6rem;
    font-weight:700;
}
  
  .midashi_text3_zitugi:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #e9920f;
    bottom: -3px;
    width: 20%;
  }





  @media screen and (max-width: 768px){ /*スマホ対応 */
  .midashi_text2 a{
    margin-left: -25px;
    font-size: 1.4rem;
    font-weight:700;
}
  .midashi_text2_zagaku a{
    margin-left: -25px;
    font-size: 1.6rem;
    font-weight:700;
}
  .midashi_text2_zitugi a{
    margin-left: -25px;
    font-size: 1.6rem;
    font-weight:700;
}
  .midashi_text3_zagaku a{
    margin-left: -10px;
    font-size: 1.4rem;
    font-weight:700;
}
  .midashi_text3_zitugi a{
    margin-left: -10px;
    font-size: 1.4rem;
    font-weight:700;
}
}

/*==========================
ボタン
==========================*/

.button {
  flex-shrink: 0;
  margin-right: 5px;
}
.button a {
  position: relative;
    background: #ffaf02;
    color: #313131;
    font-weight: 700;
    padding: 1px 20px 3px 0; /* パディング */
    text-align: center; /* 文字のアライメント */
    text-decoration: none; /* 文字装飾 */
    display: inline-block; /* ボタンの表示方法 */
    font-size: 1.6rem; /* フォントサイズ */
    margin: 4px 2px; /* 外側の余白 */
    cursor: pointer; /* カーソル */
    border: none; /* ボーダーなし */
    border-radius: 5px; /* ボタンの角丸 */
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3); /* 影 */
}
.button a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button a:hover {
  background: #ff5c1c;
  color: #FFF;
}
.button a:hover:after {
  right: 1.4rem;
}


.button001 a {
    background: #66abec;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
margin-left: 60px;
    max-width: 280px;
    padding: 10px 25px;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}
.button001 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button001 a:hover {
  background: #145da7;
  color: #FFF;
}
.button001 a:hover:after {
  right: 1.4rem;
}


.button002 a {
    background: #ffaf02;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
margin: 0 auto;
    max-width: 70%;
    padding: 10px 25px;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-size:2rem;
    font-weight: 500;
}
.button002 a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button002 a:hover {
  background: #ff5c1c;
  color: #FFF;
}
.button002 a:hover:after {
  right: 1.4rem;
}



.button_zagaku a {
    background: #5fcf9b;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
margin-left: 60px;
    max-width: 280px;
    padding: 20px 80px;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-weight: 700;
    font-size: 2rem;
}
.button_zagaku a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button_zagaku a:hover {
  background: #057541;
  color: #FFF;
}
.button_zagaku a:hover:after {
  right: 1.4rem;
}



.button_zitugi a {
    background: #f1e867;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
margin-left: 60px;
    max-width: 280px;
    padding: 20px 80px;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-weight: 700;
    font-size: 2rem;
}
.button_zitugi a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.button_zitugi a:hover {
  background: #f36310;
  color: #FFF;
}
.button_zitugi a:hover:after {
  right: 1.4rem;
}


@media screen and (max-width: 768px){ /*スマホ対応 */
  .button a {
      font-size:1rem;
  }

    .button001 a {
    margin-left: 30px;
    margin-top: -20px;

    }

    .button002 a {
        font-size:1.5rem;
    }

    .button_zagaku a {
        margin: 10px 0;
        margin-left: 30px;
        padding: 20px 50px;
         font-size:1.5rem;
    }

       .button_zitugi a {
        margin: 10px 0;
        margin-left: 30px;
        padding: 20px 50px;
         font-size:1.5rem;
    }
  }
  



/*==========================
scrollTop (上に戻るボタン）
==========================*/
.topBtn {
    display: inline-block;
    padding: 18px;
    border-radius: 20%; /*角まる */
    background-color: orangered;
    color: #fff;
    font-size: 1.2rem;
    box-shadow: 2px 2px 4px 2px rgba(29, 101, 101, 0.2);

    position: fixed;
    bottom: 1.4%;
    right: 1.4%;
}

/*==========================
Footer部分
==========================*/

    .b_bottom {
        margin-top: 20px;
        color: #FFF;
        font-size: 1rem;
        text-align: center;
    }

/*==========================
modal
==========================*/
/* モーダル画像 */
.modal__item {
    /* display: none; */
    z-index: -10;
    opacity: 0;
    transition: 1s; /* ふわっと表示*/
    width: 0;
    padding: 8px;
    background-color: white;
    box-shadow: 2px 4px 12px 4px rgba(0, 0, 0, 0.3);
	border-radius: 15px;  /* 角丸*/
	text-align : center;   /* 画像センターに*/
    
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.modal__item.open {
    /* display: block; */
    z-index: 100;
    opacity: 1;
    width: 50%;
    max-width: 700px;    /* 表示枠の大きさ */
	text-align : center;   /* 画像センターに*/

}

/* 背景*/
.container::after {
    display: none;
    content: '';
    background-color: rgba(68, 115, 126, 0.836);
    width: 100%;
    height: 100vh;
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
	z-index: 10; /*最前面へ*/
}

.container.open::after {
    display: block;
}

/* 閉じるボタン */
.close {
    display: none;
    width: 24px;
    height: 24px;
    position: fixed;
    right: 3%;
    top: 3%;
    z-index: 100;
}

.close.open {
    display: block;
}

.close img {
    width: 100%;
}
/*==========================
modal ここまで
==========================*/

/*==========================
modal の写真
==========================*/
/* サムネイル画像 */
.Ph_area {
  margin: -20px 0 30px 0;
}

img {
    max-width: 100%;
}

.photo {
    margin-top: 24px;
    display: flex;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
}

.photo__item {
    width: 245px;
}

.photo__item img {
    border-radius: 6px;
}

.photo__item a img {
    transition: 0.4s;
}

.photo__item a:hover img {
    opacity: 0.5;
}
/*==========================
modal の写真 ここまで
==========================*/

/*==========================
座学＆実技
==========================*/
/*==========================
コース詳細
==========================*/

.button_space {
display: flex;
}
.yoko {
display: flex;
}

.text_douga{
display: flex;/*横並び */
}

.text_space_Top {
   max-width: 70%;
}

@media screen and (max-width: 768px){ /*スマホ対応 */

  .button_space {
    flex-direction: column;
  }

  .text_douga{
    flex-direction: column;/*縦並びに戻す */
  }

.text_space_Top {
   max-width: 100%;
}

.yoko {
flex-direction: column;
}

}

.course_text {
    margin: 10px 60px;
}

.box_zagaku {
    padding: 0.5em 1em;
    margin: 2em 0;
    background: #ffffff;
    border: solid 5px  #057541;;/*線*/
    border-radius: 10px;/*角の丸み*/
    max-width: 100%;
}

.box_zitugi {
    padding: 0.5em 1em;
    margin: 2em 0;
    background: #ffffff;
    border: solid 5px  #e9920f;/*線*/
    border-radius: 10px;/*角の丸み*/
    max-width: 100%;
}


.box1 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #62c1ce;
}
.box1 .box-title {
    position: absolute;
    display: inline-block;
	top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #62c1ce;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}

.box1  p {
    margin: 0; 
    padding: 0 5px;
    font-size: 1.6rem;
    font-weight:700;
    border-bottom: solid 3px #8f8c8c;
}

.details-content  p {
    margin: 0; 
    padding: 10px 5px;
    font-size: 1.6rem;
    font-weight:700;
    border-bottom: solid 3px #8f8c8c;
}

.right_txt {
    text-align: right;
}
.left_txt {
    margin-left: 10px;
}


@media screen and (max-width: 768px){ /*スマホ対応 */
    .course_text {
        margin: 10px 10px;
    }

    .box1 .box-title {
        font-size: 1.4rem;
    }
    .box1  p {
        font-size: 1.2rem;
    }

    .details-content p {
        font-size: 1.2rem;
    }

    .right_txt .right_txt p {
      font-size: 1.2rem;
    }
    

  }


  /*==========================
アコーディオン  1
==========================*/

.details {
    margin: auto;
	height: 46px;
    width: 90%;
	transition: all ease-in-out .3s;
	border-left: 20px solid #00a5a0;
	border-right: 3px solid #00a5a0;
	box-sizing: border-box;
	&:last-of-type {
		border-bottom: 3px solid #00a5a0;
	}
}
.details[open] {
	height: 90%;
	background-color: #bee1de;
}
.details-summary {
	display: block;
	padding: 5px 20px;
	border-top: 3px solid #00a5a0;
	font-size: 2rem;
	font-weight: 700;
	transition: all ease-in-out .3s;
	&:hover {
		cursor: pointer;
		background-color: #bee1de;
	}
}
.details-summary::-webkit-details-marker {
	display: none;
}
.details-content {
	margin: 0 10px 10px;
	padding: 10px;
	height: 230px;
	overflow: hidden;
	overflow-y: auto;
	background-color: #fff;
}

.details[open] .details-content {
  	animation: fadeIn .3s ease;

}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px); 
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
@media screen and (max-width: 768px){
.details-summary {
    	font-size: 1.5rem;
        	padding: 9.5px 20px;
}
}

  /*==========================
アコーディオン  2
==========================*/

.details_02 {
    margin: auto;
	height: 46px;
    width: 90%;
	transition: all ease-in-out .3s;
	border-left: 20px solid #f8c32f;
	border-right: 3px solid #f8c32f;
	box-sizing: border-box;
	&:last-of-type {
		border-bottom: 3px solid #f8c32f;
	}
}
.details_02[open] {
	height: 90%;
	background-color: #fdf1b9;
}
.details_02-summary {
	display: block;
	padding: 5px 20px;
	border-top: 3px solid #f8c32f;
	font-size: 2rem;
	font-weight: 700;
	transition: all ease-in-out .3s;
	&:hover {
		cursor: pointer;
		background-color: #fdf1b9;
	}
}
.details_02-summary::-webkit-details-marker {
	display: none;
}
.details_02-content {
	margin: 0 10px 10px;
	padding: 10px;
	height: 230px;
	overflow: hidden;
	overflow-y: auto;
	background-color: #fff;
}

.details_02[open] .details-content {
  	animation: fadeIn .3s ease;

}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px); 
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
@media screen and (max-width: 768px){
.details-summary {
    	font-size: 1.5rem;
        	padding: 9.5px 20px;
}

}

/*==========================
プロモーション動画
==========================*/



div.movie_space {
 display:relative;
 position:inherit;
 height:30vh;
}

div.movie_space iframe {
    position: relative;
	width:100% !important;
	height:30vh;
    max-height:400px;
}


/*==========================
お知らせ
==========================*/
.osirase {
   width:80%;
    margin: 0 auto;
    background: #f1f1f1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.osirase .box-title {
    font-size: 1.2em;
    background: #5fc2f5;
    padding: 4px;
    text-align: center;
    color: #000000;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.osirase p {
  font-weight:600;
      font-size: 1.6em;
    padding: 15px 20px;
    margin: 0;
    text-align: center; 
}