/* ----------------------------------------------------------------- */
/* ------------------------- Common Setting ------------------------ */
/* ----------------------------------------------------------------- */
/* ------------ Basic tags ------------ */
body {
  font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 95%;
  line-height: 1.6em;
  margin: 0;
  padding: 0;
}

p {
  display: block;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

/* ------------ Breadcrumb Common ------------ */
#breadcrumb {
  list-style-type: none;
}

#breadcrumb li {
  font-weight: bold;
  display: inline-block;
  list-style-type: none;
}

#breadcrumb li:after {
  padding: 0 .2em;
  content: ' >';
  color: #660000;
}

#breadcrumb li:last-child:after {
  content: '';
}

#breadcrumb li a {
  font-size: .9em;
  padding: .2em .8em;
  text-decoration: none;
  color: #fb0;
  border-radius: 15px;
  background: #4d648d;
}

#breadcrumb li a:hover {
  background: #fffacd;
}

/* ----------------------------------------------------------------- */
/* ---------------------------- For PC ----------------------------- */
/* ----------------------------------------------------------------- */
@media screen and (min-width: 415px) {
  .sp {
    display: none;
  }

  /* ------------ Body pc ------------ */
  body {
    background-color: #330000;
    background-image: url(../images/kv0.webp);
    /*background-repeat: no-repeat;*/
    background-size: contain;
  }

  /*画面を header, glob_nav, main, footerに分割。main以外はサイズを固定*/
  .sep-disp {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }

  /* ------------ header pc ------------ */
  #header {
    margin: 0 auto;
    padding: 0;
    height: 250px;
    width: 100%;
    background-color: #660000;
  }

  #header h1 {
    z-index: 10;
    width: 100%;
    margin: 0;
    padding-top: 0;
    text-align: center;
    background: url(../images/kv0.webp);
    /*background-repeat: no-repeat;*/
  }

  /* ------------ External link & PDF icon PC ------------ */
  /*a[target=_blank] {
    padding-right: 170px;
    color: #a52a2a;
    background: url(../images/icon_blank.png) right center/20px auto no-repeat;
  }*/
  /*a[href='.pdf'] {
    padding-right: 150px;
    color: #a52a2a;
    background: url(../images/);
  }*/
  /* ------------ Breadcrumb pc ------------ */
  #breadcrumb {
    width: 100%;
    background-color: #d2b48c;
  }

  /* ------------ 画面分割用 PC ------------ */
  .contents {
    display: flex;
    flex-direction: row;
    margin: 0 20px 0 20px;
  }

  /* ------------ Side navigation PC ------------ */
  #side_nav {
    margin: 0 10px 0 0;
    padding: 0;
  }

  #side_nav nav {
    width: 270px;
    margin: 0 5px 0 0;
    color: #57383b;
    background-color: #FFCC79;
  }

  #side_nav nav ul {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }

  #side_nav nav ul li {
    line-height: 3.1em;
    list-style-type: none;
    border-top: 0.5px solid #999;
    border-right: 1px solid #999;
    border-bottom: 0.5px solid #999;
    border-left: 1px solid #999;
  }

  #side_nav nav ul li a {
    display: block;
    font-weight: bold;
    line-height: 3.1em;
    padding-left: 10px;
    padding-right: 10px;
    text-decoration: none;
    color: #57383b;
  }

  #side_nav nav ul li a:hover {
    background-color: #FFE4B8;
  }

  #nav_sponser img {
    width: 35%;
    padding-left: 0;
  }

  /* ------------ Side navigation banner PC ------------ */
  .nav_banner1 {
    width: 230px;
    margin: 0;
    padding: 15px 10px;
    background-color: #000;
  }

  /* ------------ Contents PC ------------ */
  #main {
    flex-grow: 1;
  }

  #main a {
    text-decoration: none;
  }

  #main h2 {
    font-size: 180%;
    box-sizing: border-box;
    width: 100%;
    margin: 0 20px 17px 0;
    margin-top: 0;
    padding: 30px 0 25px 20px;
    background: -webkit-linear-gradient(to top, rgb(226, 207, 255, 1), #FFF07E);
    background: linear-gradient(to top, rgb(251, 253, 191, 1), #FFF07E);
    color: #a52a2a;
    /*color: #a52a2a;
    border-top: 1px solid #775644;
    border-bottom: 1px dotted #6c5f45;
    background-color: #FFFACD;
    background-position: left top, left bottom;*/
  }

  #main h4 {
    font-size: 130%;
    box-sizing: border-box;
    width: 100%;
    margin: 10px 0 0 0;
    padding: 20px 0 18px 25px;
    color: #57383b;
    background: #fff;
    padding: 0.4em 0.5em;
    border-left: solid 20px #ffac1c;
    border-bottom: solid 3px #ffc868;
  }

  #main h4 .lead {
    color: #FFF7DD;
  }

  #main h5 {
    font-size: 100%;
    padding: 0 0 0 15px;
  }

  /* ------------ Main table PC ------------ */
  #main_table {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table th {
    padding: 20px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  #main_table tr td a {
    color: #4689FF;
  }

  #main_table tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 2 PC ------------ */
  #main_table_2 {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table_2 th {
    padding: 20px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_2 td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: center;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #fff7dd;
  }

  #main_table_2 tr td a {
    color: #4689FF;
  }

  #main_table_2 tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 3 PC ------------ */
  #main_table_3 {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table_3 th {
    padding: 15px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_3 td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  #main_table_3 tr td a {
    color: #4689FF;
  }

  #main_table_3 tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 4 PC ------------ */
  #main_table_4 {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table_4 th {
    padding: 15px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_4 td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: center;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  /* ------------ heading for main contents PC ------------ */
  .h2_group {
    flex-grow: 1;
  }

  .h2_group h4 {
    top: 250px;
  }

  .h2_group ul {
    top: 250px;
    padding: 5px 0 5px 10px;
    padding-left: 0;
    list-style-type: none;
  }

  .h2_group .contact {
    top: 2500px;
    list-style-type: none;
  }

  .h2_group .outline {
    top: 260px;
    padding: 5px 0 5px 10px;
    padding-left: 0;
    list-style-type: none;
  }

  /* ------------ News release PC ------------ */
  #news {
    /*
        position: relative;
        top: 415px;
        */
  }

  #news ul {
    overflow-y: scroll;
    box-sizing: border-box;
    width: 100%;
    height: 180px;
    padding-left: 0;
    list-style-type: none;
  }

  #news ul li {
    padding: 10px 10px 10px 175px;
    text-indent: -165px;
    color: #57383b;
    border-bottom: 1px dotted #FFE89D;
    background-color: #FFF7DD;
  }

  #news ul li time {
    font-weight: bold;
    display: inline-block;
    width: 175px;
    text-indent: 0;
    color: #57383b;
  }

  #news ul li a {
    color: #4689FF;
  }

  #news ul li a:hover {
    color: #00F;
  }

  /* ------------ figure and caption PC ------------ */
  figure {
    margin: 0;
    padding: 0;
  }

  figure img {
    float: left;
    width: 220px;
    height: 220px;
    margin: 10px 40px 10px 10px;
    border:1px solid #57383b;;
    border-radius: 50%;
  }

  figure figcaption {
    box-sizing: border-box;
    width: 100%;
    margin: 15px 50px 20px 0;
    padding: 15px 35px 15px;
    color: #57383b;
    border: solid 1px;
    background-color: #FFF7DD;
  }

  .video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
  }

  .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    text-align: center;
  }

  .btn_greeting {
  display: inline-block;
  padding: 25px 35px;
  background-color: #aa4c8f;
  color: white;
  text-decoration: none;
  border-radius: 60px;
  font-size:1.4em;
  font-weight: bold;
}

.btn_greeting:hover {
  background-color:#cc7eb1 ;
}

  /* ------------ main list PC ------------ */
  #main_list ul {
    height: auto;
    margin: 0;
    padding: 0 0 10px 0;
    list-style-type: none;
  }

  #main_list ul li {
    margin: 0;
    padding: 10px;
    color: #57383b;
    background-color: #FFF7DD;
  }

  #main_list ul li a {
    color: #4689FF;
  }

  #main_list ul li a:hover {
    color: #00F;
  }

  /* ------------ Program PC ------------ */
  .category {
    font-size: 1.1em;
  }

  .text_ca {
    position: relative;
    padding: 1.5rem 2.5rem;
    border: 4px solid #a52a2a;
    font-size: 1.2em;
  }

  .text_ca:before {
    position: absolute;
    top: 4px;
    left: 4px;
    width: calc(100% - 15px);
    height: calc(100% - 15px);
    content: '';
    border: 4px dotted #a52a2a;
  }

  .text_ca_p {
   padding: 0 0 5px 20px;
   text-decoration-line: underline;
   text-decoration-style: dotted;
   text-underline-offset: 3px;
   text-decoration-color: #a52a2a;
   text-decoration-thickness: 2px;
   font-size: 1.2em;

}


  /*
  .datetime {
    padding: 0 0 0 20px;
    font-size: 1.0em;
  }

  .chair {
    padding: 0 0 0 20px;
    font-size: 1.0em;
  }

  .title {
    margin: 0;
    padding: 0 0 0 20px;
    font-size: 1.3em;
    font-weight: bold;
  }

  .speaker {
    margin: 0;
    padding: 0 0 0 20px;
    font-size: 1.0em;
  }

  .schedule {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_schedule {
    width: 330px;
    margin-right: auto;
    margin-left: 0;
    text-align: center;
    vertical-align: middle;
  }

  .btn_schedule a {
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 35px;
    display: inline-block;
    box-sizing: border-box;
    width: 50%;
    height: 80px;
    margin: 18px 0 18px 0;
    padding: 20px;
    text-align: center;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 8px;
    background-color: #D3DEF1;
    vertical-align: middle;
  }

  .btn_schedule a:hover {
    background-color: #DFE4F5;
  }

  .schedule_date {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_1024 a {
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 35px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 18px;
    padding: 10px;
    text-align: center;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 8px;
    background-color: #D3DEF1;
    text-align: center;
    vertical-align: middle;
  }

  .btn_1024 a:hover {
    background-color: #DFE4F5;
  }

  .btn_1025 a {
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 35px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 18px;
    padding: 10px;
    text-align: center;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 8px;
    background-color: #D3DEF1;
    text-align: center;
    vertical-align: middle;
  }

  .btn_1025 a:hover {
    background-color: #DFE4F5;
  }*/
  /* ------------ Participant PC ------------ */
  .floor {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_floor {
    width: 330px;
    margin-right: auto;
    margin-left: 0;
    text-align: center;
    vertical-align: middle;
  }

  .btn_floor a {
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 35px;
    display: inline-block;
    box-sizing: border-box;
    width: 50%;
    height: 80px;
    margin: 18px 0 0 0;
    padding: 20px;
    text-align: center;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 8px;
    background-color: #D3DEF1;
    vertical-align: middle;
  }

  .btn_floor a:hover {
    background-color: #DFE4F5;
  }

  /* ------------ cfa abstract PC ------------ */
  .abstract {
    margin: 10px;
    padding: 8px 5px 10px 8px;
    color: #57383b;
    background-color: #ffd182;
  }

  .abstract a {
    color: #fff;
  }

  .abstract a:hover {
    color: #fff;
  }

  span {
    color: #ff0000
  }

  /* ------------ cfa_coi button PC ------------- */
  .btn_coi {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_coi .btn-coi_jp a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 5px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 15px;
    background-color: #ffa500;
  }

  .btn_coi .btn-coi_en a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 5px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 15px;
    background-color: #fff099;
  }

  .btn_coi .btn-coi_jp a:hover {
    background-color: #ff7b00;
  }

  .btn_coi .btn-coi_en a:hover {
    background-color: #ffd700;
  }

  /* ------------ cfa button PC ------------ */
  .btn_cfa {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_cfa .btn-cfa01 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #ff7b00;
  }

  .btn_cfa .btn-cfa02 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #ffd700;
  }

  .btn_cfa .btn-cfa03 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_cfa .btn-cfa04 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_cfa .btn-cfa01 a:hover {
    background-color: #ffa500;
    color: #800000;
  }

  .btn_cfa .btn-cfa02 a:hover {
    background-color:  #fff099;
    color: #800000;
  }

  .btn_cfa .btn-cfa03 a:hover {
    background-color: #800000;
    color: #fff;
  }

  .btn_cfa .btn-cfa04 a:hover {
    background-color:  #800000;
    color: #fff;
  }

  .btn_btn-cfa01_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa02_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa03_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa04_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 30px;
    background-color: #bbb;
  }

  /* ------------ pepars button PC ------------- */
  .btn_papers {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_papers a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_papers a:hover {
    background-color: #800000;
    color: #fff;
  }

  /* ------------ cfa symposium PC ------------ */
  /*accordion */
  .symposium {
    list-style: none;
    width: 96%;
    max-width: 900px;
    margin: 0 auto;
  }

  .symposium li {
    margin: 5px 0;
  }

  .symposium section {
    border: 1px solid #ffefd5;
  }

  .others {
    color: #a00;
  }

  /*accordion overview*/
  .overview {
    position: relative;
    /*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size: 1rem;
    font-weight: normal;
    padding: 0 0 0 50px;
    transition: all .5s ease;
  }

  .overview:hover {
    color: #a00;
  }

  /*アイコンの＋と×*/
  .overview::before,
  .overview::after {
    position: absolute;
    content: '';
    width: 15px;
    height: 2px;
    background-color: #333;
  }

  .overview::before {
    top: 48%;
    left: 15px;
    transform: rotate(0deg);
  }

  .overview::after {
    top: 48%;
    left: 15px;
    transform: rotate(90deg);
  }

  /*closeというクラスがついたら形状変化*/
  .overview.close::before {
    transform: rotate(45deg);
  }

  .overview.close::after {
    transform: rotate(-45deg);
  }

  /*accordionで現れるエリア*/
  .box {
    display: none;
    /*はじめは非表示*/
    background: #D3D3D3;
    margin: 0 3% 3% 3%;
    padding: 3%;
  }

  .shiteienja {
    font-size: 1.1rem;
    font-weight: bold;
  }



  /* ------------ Hotel PC ------------ */
  .hotel {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_hotel {
    width: 40px;
    margin-right: auto;
    margin-left: 0;
    text-align: center;
    vertical-align: middle;
  }

  .btn_hotel a {
    font-size: 1.1rem;
    line-height: 30px;
    display: inline-block;
    box-sizing: border-box;
    width: 40%;
    height: 80px;
    padding: 10px 3px 5px 3px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 10px;
    background-color: #ffa500;
  }

  .btn_hotel a:hover {
    background-color: #ff7b00;
  }


  /* ------------ Sponser PC ------------ */
  #sponser {
    padding: 8px 5px 10px 8px;
    color: #f00;
    border: solid 1px;
    background-color: #ffefd5;
  }

  #lead {
    padding: 10px 0 10px;
    color: #c0c0c0;
  }

  .contact {
    margin: 30px 0 0;
    padding: 15px 20px 15px;
    color: #57383b;
    border: solid 3px;
    border-radius: 15px;
    background-color: #ffefd5;
  }

  .contact a {
    color: #4689FF;
  }

  .contact a:hover {
    color: #00F;
  }

  .btn_sponser {
    width: 300px;
    margin-right: auto;
    margin-left: 0;
    text-align: center;
    vertical-align: middle;
  }

  .btn_sponser a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    height: 48px;
    padding: 0 10px 8px 10px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 10px;
    background-color: #ffdbc9;
  }

  .btn_sponser a:hover {
    background-color: #FFFFDD;
  }

  .btn_sponser i {
    margin: 0 0 0 .5em;
  }

  td .btn_sponser a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 80%;
    height: 48px;
    padding: 0 0 8px 20px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 21px;
    background-color: #d3def1;
  }

  td .btn_sponser i {
    margin: 0 0 0 .5em;
  }

  td .btn_sponser a:hover {
    background-color: #FFFFDD;
  }

  .btn_sponser_close {
    width: 300px;
    margin-right: auto;
    margin-left: 0;
    text-align: center;
    vertical-align: middle;
    color: #999;
  }

  .btn_sponser_close a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    height: 48px;
    padding: 0 10px 8px 10px;
    border: 1px solid #999;
    border-radius: 10px;
    background: #ddd;
    color: #999;
  }

  td .btn_sponser_close a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 80%;
    height: 48px;
    padding: 0 0 8px 20px;
    border: 1px solid #999;
    border-radius: 21px;
    background: #ddd;
    color: #999;
  }

  #main_table tr td .btn_sponser_close a {
    color: #999;
  }

  #main_table tr td .btn_sponser_close a:hover {
    color: #999;
  }

  /* ------------ support PC ------------ */
  #support ul li {
    padding: 10px 10px 10px 20px;
    color: #57383b;
    border-bottom: 1px dotted #8C93D7;
    background-color: #FFF7DD;
    font-weight: normal;
  }

  /* ------------ link PC ------------ */
  /*  #link ul li a {
    display: flex;
    width: auto;
    margin: 10px 0;
    color: #330000;
  }

  #link ul li a:hover {
    background: #FFEB2E;
  }*/
  /* ------------ pagetop PC ------------ */
  .pagetop {
    position: fixed;
    z-index: 2;
    right: 30px;
    bottom: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    height: 55px;
    border: solid 2px #330000;
    border-radius: 50%;
    background: #fffacd;
    box-shadow: 0 4px 6px rgb(0 0 0 / 30%);
  }

  .pagetop__arrow {
    width: 12px;
    height: 12px;
    transform: translateY(20%) rotate(-45deg);
    border-top: 3px solid #330000;
    border-right: 3px solid #330000;
  }

  /* ------------ Banner PC ------------ */
  .banners {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .banners section {
    flex: 1 1 calc(48% - 10px);
    margin: 5px;
  }

  #banner1, #banner3 {
    order: 1;
  }

  #banner2, #banner4 {
    order: 2;
  }

  #banner5 {
    order: 3;
  }

  /* ------------ Footer PC ------------ */
  #footer {
    height: 300px;
    margin: 20px 0 0 0;
    color: #330000;
    background: linear-gradient(#550000, #330000);
  }

  #footer a {
    text-decoration: none;
  }

  /* ------------ Footer address PC ------------ */
  #footer address li {
    display: inline-block;
    padding: 15px 30px 0 80px;
    font-style: normal;
    list-style-type: none;
    color: #dddddd;
  }

  .org {
    display: inline-block;
    margin: 0 auto;
    padding: 15px 0 15px 10px;
  }

  .mgmt {
    display: inline-block;
    margin: 0 auto;
    padding: 15px 0 15px 25px;
  }

  #footer address ul li a {
    color: #D2B48C;
  }

  #footer address ul li a:hover {
    color: #fff;
  }

  /* ------------ Footer copyright PC ------------ */
  #footer #copyright {
    padding: 0 0 0 45px;
    text-align: center;
    background-color: #D2B48C;
  }
}

/* ----------------------------------------------------------------- */
/* --------------------------- For Phone --------------------------- */
/* ----------------------------------------------------------------- */
@media screen and (max-width: 414px) {
  .pc {
    display: none;
  }

  /* ------------ Body Phone ------------ */
  body {
    background-color: #330000;
    background-image: url(../images/kv0.webp);
    /*background-repeat: no-repeat;*/
    background-size: cover;
    font-size: 105%;
  }

  /* ------------画面を header, side_nav, main, footerに分割。main以外はサイズを固定 Phone------------ */
  .sep-disp {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }

  /* ------------ header Phone------------ */
  #header {
    height: 300px;
    background-color: #660000;
  }

  #header h2 {
    z-index: 10;
    width: 100vw;
    margin: 0;
    padding-top: 0;
    text-align: center;
    background: url(../images/kv0.webp);
    background-repeat: no-repeat;
  }

  /* ------------ External link & PDF icon Phone ------------ */
  /*a[target=_blank] {
    padding-right: 80px;
    color: #a52a2a;
    background: url(../images/icon_blank.png) right center/20px auto no-repeat;
  }*/
  a[href='.pdf'] {
    padding-right: 50px;
    color: #a52a2a;
    background: url(../images/icon_pdf.png) right center/28px auto no-repeat;
  }

  /* ------------ hamburger-menu Phone------------ */
  .hamburger-menu {
    position: relative;
    float: right;
    width: 50px;
    height: 50px;
    margin: 0 20px 0 0;
    padding: 0;
    cursor: pointer;
    border: none;
    background: transparent;
    appearance: none;
  }

  .hamburger-menu__bar {
    position: absolute;
    left: 50%;
    display: inline-block;
    width: 70%;
    height: 2px;
    transition: .5s;
    transform: translateX(-50%);
    background: #fff;
  }

  .hamburger-menu__bar:first-child {
    top: 10px;
  }

  .hamburger-menu__bar:nth-child(2) {
    top: 25px;
  }

  .hamburger-menu__bar:last-child {
    top: 40px;
  }

  .hamburger-menu--open .hamburger-menu__bar {
    top: 50%;
  }

  .hamburger-menu--open .hamburger-menu__bar:first-child {
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
  }

  .hamburger-menu--open .hamburger-menu__bar:last-child {
    transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  }

  .hamburger-menu--open .hamburger-menu__bar:nth-child(2) {
    display: none;
  }

  /*.hamburger-cover{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9997;
	background: rgba(3,3,3,.5);
	display: block;
}*/
  /* ------------ global navigation Phone ------------ */
  .glob_nav {
    position: absolute;
    z-index: 9999;
    top: 180px;
    display: none;
    width: 100vw;
    background: #242424;
  }

  .glob_nav a {
    display: block;
    font-weight: bold;
    padding-left: 8px;
    text-decoration: none;
    color: #57383b;
  }

  .glob_nav__list {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
  }

  .glob_nav__list-item {
    font-size: 1.3rem;
    line-height: 2em;
    list-style-type: none;
    color: #57383b;
    border-top: 0.5px solid #fff;
    border-right: 1px solid #57383b;
    border-bottom: 0.5px solid #999;
    border-left: 1px solid #57383b;
    background-color: #ffdbab;
  }

  .glob_nav__list-item:first-child {
    border-top: solid 1px #57383b;
  }

  .glob_nav__link {
    font-weight: 700;
    display: block;
    padding: 40px 0;
    transition: .5s;
    text-decoration: none;
    color: #fff;
  }

  @media (hover: hover) and (pointer: fine) {
    .glob_nav__link:hover {
      background: #333;
    }
  }

  /* ------------ Breadcrumb Phone ------------ */
  #breadcrumb {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    background-color: #D2B48C;
  }

  #breadcrumb ul {
    margin: 0 0 0 15px;
    padding: 15px 0 15px 0;
  }

  #breadcrumb ul li {
    margin: 0 0 0 0;
  }

  /* ------------ 画面分割用 Phone ------------ */
  .contents {
    display: flex;
    flex-direction: row;
    margin: 0 10px 0 10px;
  }

  /* ------------ side navigation Phone (Not showing) ------------ */
  #side_nav {
    display: none;
  }

  /* ------------ Main contents Phone ------------ */
  #main {
    flex-grow: 1;
    width: 97vw;
  }

  #main a {
    text-decoration: none;
  }

  #main h2 {
    font-size: 180%;
    box-sizing: border-box;
    width: 100vw;
    margin: -30px 0 17px -10px;
    padding: 30px 0 25px 20px;
    background: -webkit-linear-gradient(to top, rgb(226, 207, 255, 1), #FFF07E);
    background: linear-gradient(to top, rgb(251, 253, 191, 1), #FFF07E);
    color: #a52a2a;
  }

  #main h4 {
    font-size: 120%;
    box-sizing: border-box;
    width: 100vw;
    margin: 10px 0 0 -10px;
    padding: 0 0 0 20px;
    color: #57383b;
    background: #fff;
    padding: 0.4em 0.5em;
    border-left: solid 20px #FFC868;
    border-bottom: solid 3px #FFE4B8;
  }

  #main h4 .lead {
    color: #FFF7DD;
  }

  #main h5 {
    font-size: 100%;
    padding: 0 0 0 15px;
  }

  /* ------------ Main_table Phone ------------ */
  #main_table {
    display: inline-block;
    width: 99%;
    margin: 0 0 0 -10px;
    padding: 5px 15px 5px 15px;
    padding-left: 0;
    border-collapse: collapse;
    list-style-type: none;
    color: #57383b;
  }

  #main_table th {
    display: inline-block;
    width: 99%;
    padding: 5px 15px 5px 15px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table td {
    display: inline-block;
    width: 99%;
    padding: 10px 15px 15px 15px;
    vertical-align: top;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  #main_table tr td a {
    color: #4689FF;
  }

  #main_table tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 2 Phone ----------- */
  #main_table_2 {
    border-collapse: collapse;
    width: 100vw;
    margin: 0 0 0 -10px;
    color: #57383b;
  }

  #main_table_2 th {
    padding: 10px;
    width: 100vw;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_2 td {
    padding: 10px 30px 15px 5px;
    width: auto;
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  #main_table_2 tr td a {
    color: #4689FF;
  }

  #main_table_2 tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 3 Phone ------------ */
  #main_table_3 {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table_3 th {
    padding: 15px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_3 td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  #main_table_3 tr td a {
    color: #4689FF;
  }

  #main_table_3 tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 4 Phone ------------ */
  #main_table_4 {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table_4 th {
    padding: 15px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_4 td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: center;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  /* ------------ heading for main contents Phone ------------ */
  .h2_group {
    flex-grow: 1;
  }

  .h2_group h4 {
    top: 250px;
  }

  .h2_group ul {
    top: 250px;
    margin: 0 0 0 -10px;
    padding: 5px 0 5px 10px;
    padding-left: 0;
    list-style-type: none;
  }

  .h2_group ul li {
    margin: 0 0 0 -10px;
    padding: 5px 0 5px 10px;
  }

  .h2_group .contact {
    top: 2500px;
    list-style-type: none;
  }

  .h2_group .outline {
    top: 260px;
    padding: 5px 0 5px -10px;
    padding-left: 0;
    list-style-type: none;
  }

  /* ------------ news release Phone ------------ */
  #news ul {
    top: 350px;
    overflow-y: scroll;
    box-sizing: border-box;
    height: 160px;
    list-style-type: none;
    max-width: 100%;
  }

  #news ul li {
    width: 100%;
    margin: 0 0˙0 0;
    padding: 5px 10px 5px 20px;
    padding-left: 2em;
    color: #57383b;
    border-bottom: 1px dotted #FFE89D;
    background-color: #FFF7DD;
  }

  #news ul li time {
    font-weight: bold;
    display: block;
    width: auto;
    margin-bottom: 5px;
    padding-left: 0;
    color: #57383b;
  }

  #news ul li a {
    color: #4689FF;
  }

  #news ul li a:hover {
    color: #00F;
  }

  /* ------------ figure and caption Phone ------------ */
  figure {
    margin: 0 0 0 -10px;
    padding: 0;
  }

  figure img {
    float: left;
    width: 210px;
    height: 210px;
    margin: 10px 30px 20px 10px;
  }

  figure figcaption {
    box-sizing: border-box;
    width: 100%;
    padding: 15px 15px 15px 15px;
    color: #57383b;
    border: solid 3px;
    background-color: #FFF7DD;
  }

  .video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
  }

  .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    text-align: center;
  }

  .btn_greeting {
  display: inline-block;
  padding: 25px 35px;
  background-color: #aa4c8f;
  color: white;
  text-decoration: none;
  border-radius: 60px;
  font-size:1.4em;
  font-weight: bold;
}

.btn_greeting:hover {
  background-color:#cc7eb1 ;
}


  /* ------------ cfa abstract Phone  ------------ */
  .abstract {
    margin: 10px;
    padding: 8px 5px 10px 8px;
    color: #57383b;
    background-color: #ffd182;
  }

  .abstract a {
    color: #fff;
  }

  .abstract a:hover {
    color: #fff;
  }

  span {
    color: #ff0000
  }

  /* ------------ cfa_coi button Phone ------------- */
  .btn_coi {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_coi .btn-coi_jp a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 5px;
    text-align: center;
    color: #00F;
    border: 1px solid #57383b;
    border-radius: 15px;
    background-color: #ffa500;
  }

  .btn_coi .btn-coi_en a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 5px;
    text-align: center;
    color: #00F;
    border: 1px solid #57383b;
    border-radius: 15px;
    background-color: #fff099;
  }

  .btn_coi .btn-coi_ja a:hover {
    background-color: #ff7b00;
  }

  .btn_coi .btn-coi_en a:hover {
    background-color: #ffd700;
  }

  /* ------------ cfa button Phone ------------ */
  .btn_cfa {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_cfa .btn-cfa01 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #ff7b00;
  }

  .btn_cfa .btn-cfa02 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #ffd700;
  }

  .btn_cfa .btn-cfa03 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_cfa .btn-cfa04 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_cfa .btn-cfa01 a:hover {
    background-color: #ffa500;
    color: #800000;
  }

  .btn_cfa .btn-cfa02 a:hover {
    background-color:  #fff099;
    color: #800000;
  }

  .btn_cfa .btn-cfa03 a:hover {
    background-color: #800000;
    color: #fff;
  }

  .btn_cfa .btn-cfa04 a:hover {
    background-color:  #800000;
    color: #fff;
  }

  .btn_btn-cfa01_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #000;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa02_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #000;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa03_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #000;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa04_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #000;
    border-radius: 30px;
    background-color: #bbb;
  }

  /* ------------ pepars button Phone ------------- */
  .btn_papers {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_papers a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_papers a:hover {
    background-color: #800000;
    color: #fff;
  }



  /* ------------ cfa symposium Phone ------------ */
  /*accordion */
  .symposium {
    list-style: none;
    width: 96%;
    max-width: 900px;
    margin: 0 auto;
    border: 0 5px 0 10px;
  }

  .symposium li {
    margin: 0;
  }

  .symposium section {
    border: 1px solid #ffefd5;
  }

  .others {
    color: #a00;
  }

  /*accordion overview*/
  .overview {
    position: relative;
    /*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size: 1rem;
    font-weight: normal;
    padding: 0 0 0 50px;
    transition: all .5s ease;
  }

  .overview:hover {
    color: #a00;
  }

  /*アイコンの＋と×*/
  .overview::before,
  .overview::after {
    position: absolute;
    content: '';
    width: 15px;
    height: 2px;
    background-color: #333;
  }

  .overview::before {
    top: 48%;
    left: 15px;
    transform: rotate(0deg);
  }

  .overview::after {
    top: 48%;
    left: 15px;
    transform: rotate(90deg);
  }

  /*closeというクラスがついたら形状変化*/
  .overview.close::before {
    transform: rotate(45deg);
  }

  .overview.close::after {
    transform: rotate(-45deg);
  }

  /*accordionで現れるエリア*/
  .box {
    display: none;
    /*はじめは非表示*/
    background: #D3D3D3;
    margin: 0 3% 3% 3%;
    padding: 3%;
  }

  /* ------------ Hotel Phone ------------ */
  .hotel {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_hotel {
    width: 40px;
    margin-right: auto;
    margin-left: 0;
    text-align: center;
    vertical-align: middle;
  }

  .btn_hotel a {
    font-size: 1.1rem;
    line-height: 30px;
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    height: 80px;
    padding: 10px 3px 5px 3px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 10px;
    background-color: #ffa500;
  }

  .btn_hotel a:hover {
    background-color: #ff7b00;
  }

 /* ------------ main list Phone  ------------ */
  #main_list ul {
    height: auto;
    width: 99%;
    margin: 0;
    padding: 0 0 10px 0;
    list-style-type: none;
  }

  #main_list ul li {
    z-index: 10;
    width: 99%;
    margin: 0 0 0 -10px;
    padding: 10px;
    color: #57383b;
    background-color: #FFF7DD;
  }

  #main_list p {
    margin: 0;
    padding: 10px;
    color: #57383b;
    background-color: #FFF7DD;
  }

  #main_list ul li a {
    color: #4689FF;
  }

  #main_list ul li a:hover {
    color: #00F;
  }

  /* ------------ Program Phone ------------ */
  .category {
    font-size: 1.1em;
  }

  .text_ca {
    position: relative;
    padding: 1.5rem 2.5rem;
    border: 4px solid #a52a2a;
    font-size: 1.2em;
  }

  .text_ca:before {
    position: absolute;
    top: 4px;
    left: 4px;
    width: calc(100% - 15px);
    height: calc(100% - 15px);
    content: '';
    border: 4px dotted #a52a2a;
  }

  .text_ca_p {
    padding: 0 0 5px 20px;
   text-decoration-line: underline;
   text-decoration-style: dotted;
   text-underline-offset: 3px;
   text-decoration-color: #a52a2a;
   text-decoration-thickness: 2px;
   font-size: 1.2em;

}


  /* ---------- support Phone ---------- */
  #support ul li {
    padding: 10px 10px 10px 20px;
    color: #57383b;
    border-bottom: 1px dotted #8C93D7;
    background-color: #FFF7DD;
    font-weight: normal;
  }

  /* ------------ Sponser Phone ------------ */
  #sponser {
    padding: 8px 5px 10px 8px;
    color: #f00;
    border: solid 1px;
    background-color: #ffefd5;
  }

  #lead {
    padding: 10px 0 10px;
    color: #c0c0c0;
  }

  .contact {
    margin: 30px 0 0;
    padding: 15px 20px 15px;
    color: #57383b;
    border: solid 3px;
    border-radius: 15px;
    background-color: #ffefd5;
  }

  .btn_sponser {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
  }

  .btn_sponser a {
    font-size: .9rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 48px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 10px;
    background-color: #ffdbc9;
  }

  .btn_sponser a:hover {
    background-color: #fffacd;
  }

  .btn_sponser i {
    margin: 0 0 0 .1em;
  }

  td .btn_sponser a {
    font-size: .8rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 150px;
    height: 48px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 15px;
    background-color: #fffacd;
  }

  td .btn_sponser i {
    margin: 0 0 0 .2em;
  }

  /* ------------ link Phone ------------ */
  /*#link ul li a {
    display: flex;
    width: auto;
    margin: 10px 0;
    color: #330000;
  }

  #link ul li a:hover {
    background: #FFEB2E;
  }*/
  /* ------------ pagetop Phone ------------ */
  .pagetop {
    position: fixed;
    z-index: 2;
    right: 30px;
    bottom: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border: solid 2px #330000;
    border-radius: 50%;
    background: #fffacd;
    box-shadow: 0 4px 6px rgb(0 0 0 / 30%);
  }

  .pagetop__arrow {
    width: 10px;
    height: 10px;
    transform: translateY(20%) rotate(-45deg);
    border-top: 3px solid #330000;
    border-right: 3px solid #330000;
  }

  /* ------------ banner Phone ------------ */
  .banners section {
    display: block;
    width: 100%;
    margin-bottom: 10px;
  }

  /* ------------ footer Phone ------------ */
  #footer {
    font-style: normal;
    height: 500px;
    margin: 20px 0 0 0;
    color: #330000;
    background: linear-gradient(#550000, #330000);
  }

  #footer a {
    text-decoration: none;
  }

  /* ------------ footer address Phone ------------ */
  #footer address {
    font-style: normal;
    clear: both;
    padding: 0;
    color: #fff;
    background-repeat: repeat-x;
  }

  #footer address li {
    display: inline-block;
    padding: 15px 30px 0 80px;
    font-style: normal;
    list-style-type: none;
    color: #dddddd;
  }

  .org {
    display: inline-block;
    margin: 0 auto;
    padding: 15px 0 15px 10px;
  }

  .mgmt {
    display: inline-block;
    margin: 0 auto;
    padding: 5px 0 15px 50px;
  }

  #footer address li {
    list-style-type: none;
  }

  #footer address ul li {
    display: inline-block;
    padding: 0 30px 0 10px;
    color: #fff;
  }

  #footer address ul li a {
    color: #D2B48C;
  }

  /* ------------ footer copyright Phone ------------ */
  #footer #copyright {
    text-align: center;
    background-color: #D2B48C;
  }

  #footer #copyright small {
    font-size: 95%;
  }
}

/* ----------------------------------------------------------------- */
/* ---------------------------- For Print ----------------------------- */
/* ----------------------------------------------------------------- */
@media print {
  .sp {
    display: none;
  }

  /* ------------ Body Print ------------ */
  body {
    -webkit-print-color-adjust: exact;
    /* Chrome, Safari */
    -moz-print-color-adjust: exact;
    /* Firefox */
    print-color-adjust: exact;
    /* Modern Browsers */
    width: 100%;
    background-color: #800000 !important;
    background-image: url(../images/kv0.webp) !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    font-size: 100%;
  }


/*画面を header, glob_nav, main, footerに分割。main以外はサイズを固定*/
  .sep-disp {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }

  /* ------------ header Print ------------ */
  #header {
    height: 250px;
    width: 100%;
    background-color: #660000;
  }

  #header h1 {
    z-index: 10;
    width: 100%;
    margin: 0 0 10px 0;
    padding-top: 30px;
    text-align: center;
    background: url(../images/kv0.webp);
    /*background-repeat: no-repeat;*/
  }

  /* ------------ External link & PDF icon Print ------------ */
  /*a[target=_blank] {
    padding-right: 170px;
    color: #a52a2a;
    background: url(../images/icon_blank.png) right center/20px auto no-repeat;
  }*/
  /*a[href='.pdf'] {
    padding-right: 150px;
    color: #a52a2a;
    background: url(../images/);
  }*/
  /* ------------ Breadcrumb Print ------------ */
  #breadcrumb {
    width: 100%;
    margin: 0 0 10px 0;
    padding: 5px 0 5px 20px;
    background-color: #d2b48c;
  }

  /* ------------ 画面分割用 Print ------------ */
  .contents {
    display: flex;
    flex-direction: row;
    margin: 30px 20px 0 30px;
    padding: 15px 0 0 20px;
  }

  /* ------------ Side navigation Print ------------ */
  #side_nav {
    margin: 30px 10px 20px 0;
    padding: 0;
  }

  #side_nav nav {
    width: 250px;
    margin: 0;
    color: #57383b;
    background-color: #FFCC79;
  }

  #side_nav nav ul {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }

  #side_nav nav ul li {
    line-height: 3.1em;
    list-style-type: none;
    border-top: 0.5px solid #999;
    border-right: 1px solid #999;
    border-bottom: 0.5px solid #999;
    border-left: 1px solid #999;
  }

  #side_nav nav ul li a {
    font-weight: bold;
    line-height: 3.1em;
    padding-left: 8px;
    text-decoration: none;
    color: #57383b;
  }

  #nav_sponser img {
    width: 35%;
    padding-left: 0;
  }

  /* ------------ Side navigation banner Print ------------ */
  .nav_banner1 {
    width: 230px;
    margin: 0;
    padding: 15px 10px;
    background-color: #000;
  }

  /* ------------ Contents Print ------------ */
  #main {
    flex-grow: 1;
  }

  #main a {
    text-decoration: none;
  }

  #main h2 {
    font-size: 190%;
    box-sizing: border-box;
    width: 100%;
    margin: 30px 20px 17px 0;
    margin-top: 30px;
    padding: 50px 0 45px 20px;
    background: -webkit-linear-gradient(to top, rgb(226, 207, 255, 1), #FFF07E);
    background: linear-gradient(to top, rgb(251, 253, 191, 1), #FFF07E);
    color: #a52a2a;
    /*color: #a52a2a;
    border-top: 1px solid #775644;
    border-bottom: 1px dotted #6c5f45;
    background-color: #FFFACD;
    background-position: left top, left bottom;*/
  }

  #main h4 {
    font-size: 140%;
    box-sizing: border-box;
    width: 100%;
    margin: 10px 0 0 0;
    padding: 40px 0 38px 25px;
    color: #57383b;
    background: #fff;
    padding: 0.4em 0.5em;
    border-left: solid 20px #FFC868;
    border-bottom: solid 3px #FFE4B8;
  }

  #main h4 .lead {
    color: #FFF7DD;
  }

  #main h5 {
    font-size: 100%;
    padding: 0 0 0 15px;
  }

  /* ------------ Main table Print ------------ */
  #main_table {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table th {
    padding: 20px;
    width: 180px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  #main_table tr td a {
    color: #4689FF;
  }

  #main_table tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 2 Print ------------ */
  #main_table_2 {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table_2 th {
    padding: 20px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_2 td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  #main_table_2 tr td a {
    color: #4689FF;
  }

  #main_table_2 tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 3 Print ------------ */
  #main_table_3 {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table_3 th {
    padding: 20px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_3 td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: left;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  #main_table_3 tr td a {
    color: #4689FF;
  }

  #main_table_3 tr td a:hover {
    color: #00F;
  }

  /* ------------ Main table 4 Print ------------ */
  #main_table_4 {
    border-collapse: collapse;
    width: 100%;
    color: #57383b;
  }

  #main_table_4 th {
    padding: 15px;
    width: 150px;
    text-align: left;
    border: 1px solid #999;
    background-color: #FFE4B8;
  }

  #main_table_4 td {
    padding: 10px 30px 15px 10px;
    width: auto;
    text-align: center;
    vertical-align: middle;
    border-top: 1px solid #fff;
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    background-color: #FFF7DD;
  }

  /* ------------ heading for main contents Print ------------ */
  .h2_group {
    flex-grow: 1;
  }

  .h2_group h4 {
    top: 250px;
  }

  .h2_group ul {
    top: 250px;
    padding: 5px 0 5px 10px;
    padding-left: 0;
    list-style-type: none;
  }

  .h2_group .contact {
    top: 2500px;
    list-style-type: none;
  }

  .h2_group .outline {
    top: 260px;
    padding: 5px 0 5px 10px;
    padding-left: 0;
    list-style-type: none;
  }

  /* ------------ News release Print ------------ */
  #news {
    /*
        position: relative;
        top: 415px;
        */
  }

  #news ul {
    overflow-y: scroll;
    box-sizing: border-box;
    width: 100%;
    height: 180px;
    padding-left: 0;
    list-style-type: none;
  }

  #news ul li {
    padding: 10px 10px 10px 175px;
    text-indent: -165px;
    color: #57383b;
    border-bottom: 1px dotted #FFE89D;
    background-color: #FFF7DD;
  }

  #news ul li time {
    font-weight: bold;
    display: inline-block;
    width: 175px;
    text-indent: 0;
    color: #57383b;
  }

  #news ul li a {
    color: #4689FF;
  }

  #news ul li a:hover {
    color: #00F;
  }

  /* ------------ figure and caption Print ------------ */
  figure {
    margin: 0;
    padding: 0;
  }

  figure img {
    float: left;
    width: 220px;
    height: 220px;
    margin: 10px 40px 10px 10px;
    border:1px solid #57383b;;
    border-radius: 50%;
  }

  figure figcaption {
    box-sizing: border-box;
    width: 100%;
    margin: 15px 50px 20px 0;
    padding: 15px 35px 15px;
    color: #57383b;
    border: solid 1px;
    background-color: #FFF7DD;
  }

  .video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    background: #000;
  }

  .video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
    text-align: center;
  }

  .btn_greeting {
  display: inline-block;
  padding: 25px 35px;
  background-color: #aa4c8f;
  color: white;
  text-decoration: none;
  border-radius: 60px;
  font-size:1.4em;
  font-weight: bold;
}

.btn_greeting:hover {
  background-color:#cc7eb1 ;
}


  /* ------------ main list Print ------------ */
  #main_list ul {
    height: auto;
    margin: 0;
    padding: 0 0 10px 0;
    list-style-type: none;
  }

  #main_list ul li {
    margin: 0;
    padding: 10px;
    color: #57383b;
    background-color: #FFF7DD;
  }

  #main_list p {
    margin: 0;
    padding: 10px;
    color: #57383b;
    background-color: #FFF7DD;
  }

  #main_list ul li a {
    color: #4689FF;
  }

  #main_list ul li a:hover {
    color: #00F;
  }

  /* ------------ Program Print ------------ */
  .category {
    font-size: 1.1em;
  }

  .text_ca {
    position: relative;
    padding: 1.5rem 2.5rem;
    border: 4px solid #a52a2a;
    font-size: 1.2em;
  }

  .text_ca:before {
    position: absolute;
    top: 4px;
    left: 4px;
    width: calc(100% - 15px);
    height: calc(100% - 15px);
    content: '';
    border: 4px dotted #a52a2a;
  }

  .text_ca_p {
    padding: 0 0 5px 20px;
   text-decoration-line: underline;
   text-decoration-style: dotted;
   text-underline-offset: 3px;
   text-decoration-color: #a52a2a;
   text-decoration-thickness: 2px;
   font-size: 1.2em;

}

  /* ------------ cfa abstract Print  ------------ */
  .abstract {
    margin: 10px;
    padding: 8px 5px 10px 8px;
    color: #57383b;
    background-color: #ffd182;
  }

  .abstract a {
    color: #fff;
  }

  .abstract a:hover {
    color: #fff;
  }

  span {
    color: #ff0000
  }

  /* ------------ cfa_coi button Print ------------- */
  .btn_coi {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_coi .btn-coi_jp a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 5px;
    text-align: center;
    color: #00F;
    border: 1px solid #57383b;
    border-radius: 15px;
    background-color: #ffa500;
  }

  .btn_coi .btn-coi_en a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 10px 0 5px;
    text-align: center;
    color: #00F;
    border: 1px solid #57383b;
    border-radius: 15px;
    background-color: #fff099;
  }

  .btn_coi .btn-coi_ja a:hover {
    background-color: #ff7b00;
  }

  .btn_coi .btn-coi_en a:hover {
    background-color: #ffd700;
  }

  /* ------------ cfa button Print ------------ */
  .btn_cfa {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_cfa .btn-cfa01 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #ff7b00;
  }

  .btn_cfa .btn-cfa02 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #ffd700;
  }

  .btn_cfa .btn-cfa03 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_cfa .btn-cfa04 a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_cfa .btn-cfa01 a:hover {
    background-color: #ffa500;
    color: #800000;
  }

  .btn_cfa .btn-cfa02 a:hover {
    background-color:  #fff099;
    color: #800000;
  }

  .btn_cfa .btn-cfa03 a:hover {
    background-color: #800000;
    color: #fff;
  }

  .btn_cfa .btn-cfa04 a:hover {
    background-color:  #800000;
    color: #fff;
  }

  .btn_btn-cfa01_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 8px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #000;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa02_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 8px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #000;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa03_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 8px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #000;
    border-radius: 30px;
    background-color: #bbb;
  }

  .btn_btn-cfa04_close {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 300px;
    height: 50px;
    margin: 8px 0 15px;
    text-align: center;
    color: #fff;
    border: 1px solid #000;
    border-radius: 30px;
    background-color: #bbb;
  }

  /* ------------ pepars button Print ------------- */
  .btn_papers {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_papers a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 350px;
    height: 50px;
    margin: 10px 0 15px;
    text-align: center;
    color: #800000;
    border: 1px solid #57383b;
    border-radius: 30px;
    background-color: #fff;
  }

  .btn_papers a:hover {
    background-color: #800000;
    color: #fff;
  }


  /* ------------ cfa symposium Print ------------ */
  /*accordion */
  .symposium {
    list-style: none;
    width: 96%;
    max-width: 900px;
    margin: 0 auto;
  }

  .symposium li {
    margin: 5px 0;
  }

  .symposium section {
    border: 1px solid #ffefd5;
  }

  .others {
    color: #a00;
  }

  /*accordion overview*/
  .overview {
    position: relative;
    /*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    font-size: 1rem;
    font-weight: normal;
    padding: 0 0 0 50px;
    transition: all .5s ease;
  }

  .overview:hover {
    color: #a00;
  }

  /*アイコンの＋と×*/
  .overview::before,
  .overview::after {
    position: absolute;
    content: '';
    width: 15px;
    height: 2px;
    background-color: #333;
  }

  .overview::before {
    top: 48%;
    left: 15px;
    transform: rotate(0deg);
  }

  .overview::after {
    top: 48%;
    left: 15px;
    transform: rotate(90deg);
  }

  /*closeというクラスがついたら形状変化*/
  .overview.close::before {
    transform: rotate(45deg);
  }

  .overview.close::after {
    transform: rotate(-45deg);
  }

  /*accordionで現れるエリア*/
  .box {
    display: none;
    /*はじめは非表示*/
    background: #D3D3D3;
    margin: 0 3% 3% 3%;
    padding: 3%;
  }

  .shiteienja {
    font-size: 1.1rem;
    font-weight: bold;
  }

  /* ------------ Hotel Print ------------ */
  .hotel {
    width: 100%;
    display: inline-block;
    text-align: center;
  }

  .btn_hotel {
    width: 40px;
    margin-right: auto;
    margin-left: 0;
    text-align: center;
    vertical-align: middle;
  }

  .btn_hotel a {
    font-size: 1.1rem;
    line-height: 30px;
    display: inline-block;
    box-sizing: border-box;
    width: 40%;
    height: 80px;
    padding: 10px 3px 5px 3px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 10px;
    background-color: #ffa500;
  }

  .btn_hotel a:hover {
    background-color: #ff7b00;
  }



  /* ------------ Sponser Print ------------ */
  #sponser {
    padding: 8px 5px 10px 8px;
    color: #f00;
    border: solid 1px;
    background-color: #ffefd5;
  }

  #lead {
    padding: 10px 0 10px;
    color: #c0c0c0;
  }

  .contact {
    margin: 30px 0 0;
    padding: 15px 20px 15px;
    color: #57383b;
    border: solid 3px;
    border-radius: 15px;
    background-color: #ffefd5;
  }

  .contact a {
    color: #4689FF;
  }

  .contact a:hover {
    color: #00F;
  }

  .btn_sponser {
    width: 300px;
    margin-right: auto;
    margin-left: 0;
    text-align: center;
    vertical-align: middle;
  }

  .btn_sponser a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    height: 48px;
    padding: 0 10px 8px 10px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 10px;
    background-color: #ffdbc9;
  }

  .btn_sponser a:hover {
    background-color: #FFFFDD;
  }

  .btn_sponser i {
    margin: 0 0 0 .5em;
  }

  td .btn_sponser a {
    font-size: 1.1rem;
    line-height: 45px;
    display: inline-block;
    box-sizing: border-box;
    width: 80%;
    height: 48px;
    padding: 0 0 8px 20px;
    color: #57383b;
    border: 1px solid #999;
    border-radius: 10px;
    background-color: #ffdbc9;
  }

  td .btn_sponser i {
    margin: 0 0 0 .5em;
  }

  td .btn_sponser a:hover {
    background-color: #FFFFDD;
  }

  /* ------------ support Print ------------ */
  #support ul li {
    padding: 10px 10px 10px 20px;
    color: #57383b;
    border-bottom: 1px dotted #8C93D7;
    background-color: #FFF7DD;
    font-weight: normal;
  }

  /* ------------ link Print ------------ */
  #link ul li a {
    display: flex;
    width: auto;
    margin: 10px 0;
    color: #330000;
  }

  #link ul li a:hover {
    background: #FFEB2E;
  }

  /* ------------ pagetop Print ------------ */
  .pagetop {
    position: fixed;
    z-index: 2;
    right: 50px;
    bottom: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    border: solid 2px #330000;
    border-radius: 50%;
    background: #fffacd;
    box-shadow: 0 4px 6px rgb(0 0 0 / 30%);
  }

  .pagetop__arrow {
    width: 24px;
    height: 24px;
    transform: translateY(20%) rotate(-45deg);
    border-top: 3px solid #330000;
    border-right: 3px solid #330000;
  }

  /* ------------ Banner Print ------------ */
  .banners {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .banners section {
    flex: 1 1 calc(48% - 10px);
    margin: 5px;
  }

  #banner1, #banner3 {
    order: 1;
  }

  #banner2 {
    order: 2;
  }

  /* ------------ Footer Print ------------ */
  #footer {
    height: 200px;
    margin: 20px 0 0 0;
    color: #330000;
    background: linear-gradient(#550000, #330000);
  }

  #footer a {
    text-decoration: none;
  }

  /* ------------ Footer address Print ------------ */
  #footer address li {
    display: inline-block;
    padding: 15px 15px 0 50px;
    font-style: normal;
    list-style-type: none;
    color: #dddddd;
  }

  .org {
    display: inline-block;
    margin: 0 auto;
    padding: 15px 0 15px 0;
  }

  .mgmt {
    display: inline-block;
    margin: 0 auto;
    padding: 15px 0 15px 0;
  }

  #footer address ul li a {
    color: #D2B48C;
  }

  #footer address ul li a:hover {
    color: #fff;
  }

  /* ------------ Footer address Print ------------ */
  #footer address li {
    display: inline-block;
    padding: 15px 30px 0 80px;
    font-style: normal;
    list-style-type: none;
    color: #dddddd;
  }

  .org {
    display: inline-block;
    margin: 0 100px;
    padding: 15px 0 15px 10px;
  }

  .mgmt {
    display: inline-block;
    margin: 0 100px;
    padding: 15px 0 15px 25px;
  }

  #footer address ul li a {
    color: #D2B48C;
  }

  #footer address ul li a:hover {
    color: #fff;
  }

  /* ------------ Footer copyright Print ------------ */
  #footer #copyright {
    padding: 0 0 0 45px;
    text-align: center;
    background-color: #D2B48C;
  }
