/* color: #D93122(朱)　#2d5b76(ベース青)　#D93122(黄色） */

@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');
@media screen and (max-width: 1200px) {

}


/* 画面レイアウト 三段*/
/* ============================================ */

.left_column{
width:260px;
float:left;
margin-right:20px;
}

@media screen and (max-width: 1200px) {
.left_column{
width:100%;
float:none;
margin-right:0px;
}
}

.pages_only{
display:none;
}

.center_column{
width:620px;
float:left;
margin-right:20px;
}

@media screen and (max-width: 1200px) {
.center_column{
width:100%;
float:none;
margin-right:0px;
}
}

.right_column{
width:280px;
float:left;
}

@media screen and (max-width: 1200px) {
.right_column{
width:100%;
float:none;
}
}


/* ページ装飾 */
/* ============================================ */

.top_title{
    /*
background-color:#2d5b76;
color:#fff;
font-size:20px;
font-weight:bold;
border-top:solid 8px #2d5b76;
padding-left:15px;
margin-top:20px;
border-radius: 5px 3px 0px 0px;

*/
font-size:20px;
font-weight:bold;
font-family: "Noto Sans JP", sans-serif;
color:#2d5b76;
margin-top:10px;
margin-bottom:20px;
}

.top_title_accepting{
font-size:20px;
font-weight:bold;
font-family: "Noto Sans JP", sans-serif;
color:#782534;
margin-top:10px;
margin-bottom:20px;

}
.left_menu{
    margin-top:20px;
    background: #fcfcfc;
    padding:10px;
  border: 1px solid rgba(32, 103, 166, 0.08);
  border-radius: 12px;

  box-shadow:
    0 4px 14px rgba(21, 68, 108, 0.06),
    0 1px 3px rgba(21, 68, 108, 0.03);

}
.keydates{
    margin-top:20px;
    background: #ffffff;
    padding:10px;
    border: 1px solid rgba(32, 103, 166, 0.08);
    border-radius: 12px;

    box-shadow:
        0 4px 14px rgba(21, 68, 108, 0.06),
        0 1px 3px rgba(21, 68, 108, 0.03);

}
.nowaccepting{
    margin-top:20px;
    background: #ffffff;
    padding:10px;
  border: 1px solid rgba(32, 103, 166, 0.08);
  border-radius: 12px;

  box-shadow:
    0 4px 14px rgba(21, 68, 108, 0.06),
    0 1px 3px rgba(21, 68, 108, 0.03);

}
.program_guide{
    margin-top:20px;
    background: #ffffff;
    padding:10px;
  border: 1px solid rgba(32, 103, 166, 0.08);
  border-radius: 12px;

  box-shadow:
    0 4px 14px rgba(21, 68, 108, 0.06),
    0 1px 3px rgba(21, 68, 108, 0.03);

}
.nowaccepting_frame{
   /* padding: 10px;
    border: solid 1px #2d5b76;*/
}
@media screen and (max-width: 1200px) {
.top_title{
    /*
background-color:#2d5b76;
color:#fff;
font-size:18px;
font-weight:normal;
border-top:solid 4px #2d5b76;
border-bottom:solid 5px #D93122;
padding-left:3%;
margin-top:30px;
margin-bottom:15px;
width:97%;*/
font-weight: bold;
font-size:18px;

}
}

.card-row::before {
  content: "›";
  color: #1670b8;
  font-size: 18px;
  font-weight: 600;
  margin-right: 10px;
}


.menu_button_link{
border-top:solid 2px #2d5b76;
border-bottom:solid 2px #2d5b76;
border-right:solid 2px #2d5b76;
/* border-left:solid 15px #2d5b76;*/
margin-top:10px;
margin-bottom:10px;
margin-right:20px;
line-height:40px;
}

@media screen and (max-width: 1200px) {
.menu_button_link{
border:none;
margin-top:0px;
margin-bottom:0px;
margin-right:0px;
line-height:40px;
}
}


.menu_button_link A{
text-decoration:none;
display:block;
width:100%;
color:#333;
}

/* モバイル左メニューの奇数番目のリスト装飾 */
/* 右のマージン削除，下のボーダー削除 */
@media screen and (max-width: 1200px) {
.menu_button:nth-child(2n+1){
border-top:solid 1px #666;
border-bottom:none;
border-right:solid 1px #666;
border-left:solid 1px #666;
margin-top:0px;
margin-bottom:0px;
margin-right:0;
margin-left:2%;
line-height:40px;
width:47%;
float:left;
}
}

/* モバイル左メニューの偶数番目のリスト装飾 */
/* 左のマージン削除，下のボーダー削除 */
@media screen and (max-width: 1200px) {
.menu_button:nth-child(2n){
border-top:solid 1px #666;
border-bottom:none;
border-right:solid 1px #666;
border-left:none;
margin-top:0px;
margin-bottom:0px;
margin-right:2%;
margin-left:0;
line-height:40px;
width:47%;
float:left;
}
}

/* モバイル左メニューの5，6番目のリスト装飾 */
/* 下のボーダー表示 */
@media screen and (max-width: 1200px) {
.menu_button:nth-child(n+5){
border-bottom:solid 1px #666;
}}




.menu_button_text{
padding-left:15px;
}

@media screen and (max-width: 1200px) {
.menu_button_link .menu_button_text{
/*border-left:solid 10px #D93122;*/
margin-left:15px;
height:25px;
margin-top:10px;
margin-bottom:10px;
line-height:25px;
}
}

.menu_button_text_two_lines{
padding-left:15px;
line-height:19px;
font-size:14px;
margin-top:2px;
margin-bottom:2px;
}

@media screen and (max-width: 1200px) {
.menu_button_link .menu_button_text_two_lines{
/*border-left:solid 10px #D93122;   */
margin-left:15px;
height:25px;
margin-top:10px;
margin-bottom:10px;
line-height:19px;
}
}


.menu_button_nolink{
color:#999;
/*border-top:solid 2px #666;
border-bottom:solid 2px #666;
border-right:solid 2px #666;
border-left:solid 15px #999;*/
margin-top:10px;
margin-bottom:10px;
margin-right:20px;
line-height:45px;
}

@media screen and (max-width: 1200px) {
.menu_button_nolink{
border:none;
margin-top:0px;
margin-bottom:0px;
margin-right:0px;
line-height:45px;
background-color:#eee;
}
}



.top_image_mobile{
display:none;
}

@media screen and (max-width: 1200px) {
.top_image_mobile{
display:inline;
width:100%
}
}

@media screen and (max-width: 1200px) {
.top_image_mobile img{
width:100%
}
}

@media screen and (max-width: 1200px) {
.top_image{
display:none;
}
}

/* ジョイントレイアウト　横長画像（横三段抜き） */
.top_image_sandan img{
margin-right:20px;
width:100%;
}

/* ジョイントレイアウト　横長画像（横三段抜き）モバイル表示用 */
@media screen and (max-width: 1200px) {
.top_image_sandan img{
width:100%;
margin-bottom:-20px;
}
}




@media screen and (max-width: 1200px) {
.top_image img{
margin-right:20px;
width:100%;
}
}

/* コンテンツ装飾 */
/* ============================================ */

.nowaccepting_items{
margin-top:4px;
margin-bottom:12px;
/*border-left:solid 5px #D93122;*/
padding-left:10px;
color: #782534;
}
.nowaccepting_items::before {
  content: "›";
  color: #782534;
  font-size: 18px;
  font-weight: 600;
  margin-right: 10px;
}
.nowaccepting .top_title{
    color: #782534;
}

.nowaccepting_items A{
text-decoration:none;

}

.nowaccepting_items A:hover{
text-decoration:underline;
}

@media screen and (max-width: 1200px) {
.nowaccepting_items{
margin-left:15px;
}
}

.maintenance{
border:solid 1px #2d5b76;
padding:7px;
}




.program_guide_button{ 
display:block;
width:160px;
/*border:solid 2px #2d5b76;*/
float:left;
margin-left:10px;
margin-right:10px;
padding-left:10px;
padding-right:10px;
padding-top:20px;
height:80px;
color:#999;
font-size:14px;
}


@media screen and (max-width: 1200px) {
.program_guide_button{ 
display:block;
width:89%;
border:solid 2px #999;
float:left;
margin-left:10px;
margin-right:10px;
margin-bottom:10px;
padding-left:10px;
padding-right:10px;
padding-top:5px;
height:50px;
color:#999;

}
}

.program_guide_button A{
display:block;
width:100%;
height:100%;
text-decoration:none;
/*color:#2d5b76;*/
}

.program_guide_button A:hover{
color:#D93122;
}


.program_guide_button_nolink{ 
/*width:160px;
border:solid 2px #999;
float:left;
margin-left:10px;
margin-right:10px;
padding-left:10px;
padding-right:10px;
padding-top:20px;
height:80px;
color:#999;
font-size:14px;*/
    border-bottom: 1px solid #e7eef5;
margin-left:10px;
margin-right:10px;
padding-left:10px;
padding-right:10px;
padding-top:10px;
color:#999;
font-size:14px;
}


@media screen and (max-width: 1200px) {
.program_guide_button_nolink{ 
width:89%;
/*border:solid 2px #999;*/
float:left;
margin-left:10px;
margin-right:10px;
margin-bottom:10px;
padding-left:10px;
padding-right:10px;
padding-top:5px;
height:50px;
color:#999;

}
}




.program_guide_button_nolink A{
display:block;
background-color:#999;
width:100%;
}

.program_guide_button_item{
font-size:19px;
font-weight:bold;
}

@media screen and (max-width: 1200px) {
.program_guide_button_item{
font-size:16px;
font-weight:bold;
}
}


.program_guide_button_item_two_lines{
margin-top:-10px;
line-height:22px;
font-size:19px;
font-weight:bold;
}

.program_guide_button_2row_frame{
display:block;
width:180px;
float:left;
margin-left:10px;
margin-right:10px;
height:80px;
}

.program_guide_button_2row{
display:block;
width:174px;
border:solid 2px #2d5b76;
padding-left:3px;
padding-right:3px;
padding-top:3px;
margin-bottom:7px;
height:42px;
color:#999;
font-size:12px;
}

.program_guide_button_2row A{
display:block;
width:100%;
height:100%;
text-decoration:none;
}

.program_guide_button_2row_item{
font-size:14px;
font-weight:bold;
}


.program_conv_button{
width:580px;
/*height:50px;*/
margin-top:20px;
margin-left:10px;

text-align:center;
/*
width:580px;
height:50px;
margin-top:20px;
margin-left:10px;
text-align:center;
*/
}

@media screen and (max-width: 1200px) {
.program_conv_button{
    /*
width:89%;
margin-top:30px;
margin-left:2%;
border-top:solid 2px #2d5b76;
border-bottom:solid 2px #2d5b76;
border-right:solid 2px #2d5b76;
border-left:solid 15px #2d5b76;*/

width:89%;
margin-top:30px;
margin-left:2%;

}
}

.program_conv_button A{
line-height:50px;

width:100%;
text-decoration:none;
font-weight:bold;
color:#2d5b76;
border-bottom:solid 1px #2d5b76;

/*
line-height:50px;
display:block;
width:100%;
text-decoration:none;
font-weight:bold;

*/
}
.program_conv_button A::before {
  content: "›";
  color:#2d5b76;

  font-size: 24px;
  font-weight: 600;
  margin-right: 10px;
}

.program_conv_button A:hover{
    color: #D93122;
/*
border:solid 5px #D93122;
position:relative;
top:-5px;
left:-5px;
background-color:#D93122;
width:575px;
color:#fff;
line-height:40px;
padding-top:5px;
padding-bottom:5px;*/
}


/* 日本語のみ　2022/06/21 */

.program_guide_button_hs{ 
display:block;
width:260px;
border:solid 2px #D93122;
float:left;
margin-left:10px;
margin-right:10px;
margin-top: 10px;
padding-left:10px;
padding-right:10px;
padding-top:5px;
height:45px;
color:#999;
font-size:14px;
}





.program_guide_button_hs_item{
font-size:18px;
font-weight:bold;
text-align: center;
}




.program_guide_button_hs A{
display:block;
width:100%;
height:100%;
text-decoration:none;
}

.program_guide_button_hs_nolink{
display:block;
width:260px;
border:solid 2px #999;
float:left;
margin-left:10px;
margin-right:10px;
margin-top: 10px;
padding-left:10px;
padding-right:10px;
padding-top:5px;
height:45px;
color:#999;
font-size:14px;
}

.program_guide_button_hs_nolink A{
display:block;
background-color:#999;
width:100%;
}


/* ここまで　*/
.news{
    background: #ffffff;
    padding:10px;
    border: 1px solid rgba(32, 103, 166, 0.08);
    border-radius: 12px;

    box-shadow:
        0 4px 14px rgba(21, 68, 108, 0.06),
        0 1px 3px rgba(21, 68, 108, 0.03);
}

.news_frame{
height:200px;
padding-top:7px;
overflow:scroll;

}

.news_item{
margin-bottom:15px;
/*border-left:solid 5px #D93122;*/
padding-left:10px;
}

.news_item A{
text-decoration:none;

}

.news_item A:hover{
text-decoration:underline;
}

@media screen and (max-width: 1200px) {
.news_item{
margin-left:15px;
}
}


.kay_dates_frame{

}

@media screen and (max-width: 1200px) {
.kay_dates_frame{
height:initial;
overflow: visible;
}
}

.key_dates_date{
margin-top:1px;
margin-left:5px;
/*border-left:solid 5px #2d5b76;*/
padding-left:5px;
line-height:15px;
color:#2d5b76;
font-size:14px;
}

.key_dates_item{
/*margin-top:2px;
margin-bottom:8px;
margin-left:15px;
line-height:20px;*/
margin-top:2px;
margin-bottom:12px;
margin-left:20px;
line-height:20px;
padding-bottom:5px;
  border-bottom: 1px solid #e7eef5;
}

.covid19{
margin-top:30px;
margin-bottom:30px;
border-top:solid 2px #2d5b76;
border-bottom:solid 2px #2d5b76;
}

.covid19_item{
width:274px;
border:solid 4px #D93122;
margin-top:20px;
margin-bottom:20px;
line-height:40px;
font-weight:bold;
text-align:center;
font-size:20px;
}

@media screen and (max-width: 1200px) {
.covid19_item{
width:80%;
border:solid 4px #D93122;
margin:0 auto;
margin-top:20px;
margin-bottom:20px;
line-height:40px;
font-weight:bold;
text-align:center;
font-size:20px;
}
}


.covid19_item A{
display:block;
width:100%;
color:#D93122;
text-decoration:none;
}

/* 英語入りきらなかったのでフォントだけ小さくした */

.covid19_item_e{
width:274px;
border:solid 4px #D93122;
margin-top:20px;
margin-bottom:20px;
line-height:40px;
font-weight:bold;
text-align:center;
font-size:18px;
}

.covid19_item_e A{
display:block;
width:100%;
color:#D93122;
text-decoration:none;
}

.faq_item{
margin-bottom:15px;
/*border-left:solid 5px #D93122;*/  
padding-left:10px;
}

.faq_item A{
text-decoration:none;

}

.faq_item A:hover{
text-decoration:underline;
}


@media screen and (max-width: 1200px) {
.faq_item{
margin-left:15px;
}
}

.twitter{
margin-top:30px;
border-top:solid 2px #2d5b76;
border-bottom:solid 2px #2d5b76;
}

.twitter_frame{
width:280px;
height:350px;
overflow: auto;
margin-top:10px;
padding-bottom:10px;
}

@media screen and (max-width: 1200px) {
.twitter_frame{
width:100%;
height:350px;
overflow: auto;
padding-top:10px;
padding-bottom:10px;
}
}


/* 直前情報ボタン追加（0513) */

.in_meeting_set{
width:620px;
margin-bottom:15px;
}

.in_meeting_button{
border:solid 5px #D93122;
width:310px;
height:40px;
line-height:40px;
font-size:18px;
float:left;
text-align:center;
}

.in_meeting_button A{
color:#D93122;
font-weight:bold;
text-decoration:none;
}

.in_meeting_text{
/*border-left:solid 10px #2d5b76;*/
width:260px;
float:left;
margin-left:15px;
padding-left:10px;
padding-top:7px;
padding-bottom:7px;
font-size:14px;
height:36px;
}

/* IYBSSD */

.IYBSSD{
margin-top:30px;
margin-bottom:30px;
border-top:solid 2px #2d5b76;
}

.IYBSSD img{
margin-top:20px;
width:200px;
} 

/* 説明会動画_movie */
/*------------------------------------------------*/


.movie_guide_button{ 
display:block;
width:120px;
border:solid 2px #D93122;
float:left;
margin-left:7px;
margin-right:7px;
padding-left:7px;
padding-right:7px;
padding-top:10px;
height:55px;
color:#999;
font-size:13px;
}


@media screen and (max-width: 1200px) {
.movie_guide_button{ 
display:block;
width:89%;
border:solid 2px #999;
float:left;
margin-left:10px;
margin-right:10px;
margin-bottom:10px;
padding-left:10px;
padding-right:10px;
padding-top:5px;
height:40px;
color:#999;

}
}

.movie_guide_button A{
display:block;
width:100%;
height:100%;
text-decoration:none;
}

.movie_guide_button_item{
font-size:18px;
font-weight:bold;
}

@media screen and (max-width: 1200px) {
.movie_guide_button_item{
font-size:15px;
font-weight:bold;
}
}


.movie_guide_button_nolink{ 
width:120px;
border:solid 2px #999;
float:left;
margin-left:7px;
margin-right:7px;
padding-left:7px;
padding-right:7px;
padding-top:10px;
height:55px;
color:#999;
font-size:13px;
}


@media screen and (max-width: 1200px) {
.movie_guide_button_nolink{ 
width:89%;
border:solid 2px #999;
float:left;
margin-left:10px;
margin-right:10px;
margin-bottom:10px;
padding-left:10px;
padding-right:10px;
padding-top:5px;
height:40px;
color:#999;
}
}

.movie_guide_button_nolink A{
display:block;
background-color:#999;
width:100%;
}


/* Confit 一般公開後*/
/*------------------------------------------------*/
.add_button{
display:block;
border:solid 3px #D93122;
float:left;
width:600px;
height: 50px;
color: #fff;
font-size: 20px;
font-weight: bold;
text-align: center;
padding-top: 5px;
margin-top:10px;
margin-bottom:10px;
margin-left:5px;
margin-right:5px;
}


.add_button A{
display:block;
color:#D93122;
padding-top:10px;
padding-left:5px;
padding-right:5px;
}

.add_button A:hover{
display:block;
background-color:#fff;
}


/* 親要素のクラス名を対象にする */
.top_title {
  display: flex;
  align-items: center; /* これでアイコンとテキストの上下中央が揃います */
  gap: 10px;           /* 元のクラス「mr10」に相当する、アイコンとテキストの間の余白 */
}
.top_title::before {
      /* 元のspanクラス「icon_red」「block」の再現 */
        font-weight: normal;
  font-style: normal;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  
  font-family: 'Material Symbols Outlined';
  font-size: 36px;
    display: inline-block;
  
  /* アイコンが途中で切れないようにする対策 */
  line-height: 1;
}
/* ::before 疑似要素でアイコンを挿入 */
.nowaccepting .top_title::before {
  content: "campaign";
    color: #782534;
}

.keydates .top_title::before {
  content: "calendar_clock";
  color: #2d5b76;
}

.program_guide .top_title::before {
  content: "newspaper";
  color: #2d5b76;
}

.news .top_title::before {
  content: "data_info_alert"; 
  color: #2d5b76;
}
