@charset "utf-8";

@media print, screen and (min-width: 828px){
/**************************
PC用スタイル
**************************/
/* ヘッダ */
.Hed_bg{
    width: 100%;
}
.Hed_bloc{
    /* max-width: 1280px; */
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    background-color: #004CFF;
}
.Hed_bloc p {
    margin: 0;        /* pタグの上下余白を削除 */
    line-height: 0;   /* 行の高さによる隙間を排除 */
}
.Hed_bloc img{
    width: 100%;

}
.Hed_menu_logo{
    display: none;
}
.Hed_menu_bg{
    width: 100%;
    background-image: url(../img/hed/menu_bg.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    padding-top: 20px;
    padding-bottom: 20px;
}
.Hed_menu_bloc{
    max-width: 1320px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Hed_menu_bloc ul{
    display: flex;
    justify-content: center;
}
.Hed_menu_bloc ul li img{
    width: 100%;
}

.Hed_menu_bloc ul li a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
}
.spmenu_btn {
    display: none;
}
.Page_menu_bg{
    position: fixed; /* ここに注目! */
    top: 0;
    z-index: 1000;
    width: 100%;
    background-image: url(../img/hed/menu_bg.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    padding-top: 30px;
    padding-bottom: 30px;
}
.Page_menu_logo{

}
.Page_menu_bloc{
    max-width: 1320px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
}
.Page_menu_bloc ul{
    display: flex;
    justify-content: center;
    align-items: center;
}
.Page_menu_bloc ul li img{
    height: 60px;
}

.Page_menu_bloc ul li a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
}
/* トップ THEME */
.Top_theme_bg{
    padding-bottom: 45px;
    background-image: url(../img/top/theme_bg_01.png);
    background-repeat: no-repeat;
    background-position: left 50px;
    background-size: auto 1400px;
    padding-top: -10px;
}
.Top_theme_bloc{
    max-width: 1500px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../img/top/theme_bg_02.png);
    background-repeat: no-repeat;
    background-position: right top;
}
.Top_theme_box1{
    max-width: 1100px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_theme_title_01{
    font-size: 21px;
    color: #e61112;
    margin-bottom: 30px;
}
.Top_theme_title_02{
    font-size: 63px;
    line-height: 108%;
    font-weight: 600;
    color: #e61112;
    font-family: Shippori Mincho, sans-serif;
    margin-bottom: 70px;
    letter-spacing: 0.1em;
}
.Top_theme_coment{
    font-size: 19px;
    line-height: 1.77;
    text-align: left;
    text-align: justify;
    margin-bottom: 60px;
}
.Top_theme_btm{
    margin-bottom: 85px;
}
.Top_theme_btm a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
}
.Top_theme_point_list{
    width: 1260px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between ;
}
.Top_theme_point_item{
    max-width: 590px;
    margin-bottom: 45px;
    padding-bottom: 42px;
    border-bottom: 1px solid #999999;
}
.Top_theme_point_item_title{
    font-size: 50px;
    font-family: Shippori Mincho, sans-serif;
    text-align: left;
    margin-bottom: 40px;
}
.Top_theme_point_item_title p{
    font-weight: 700;
}
.Top_theme_point_item_title img{
    margin-right: 25px;
}
.Top_theme_point_item_coment{
    font-size: 19px;
    line-height: 1.77;
    text-align: left;
    margin-bottom: 0px;
    text-align: justify;
}
/* トップ MOV */
.Top_mov_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
    background-image: url(../img/all/top_pc_bg.jpg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 100% auto;
}
.Top_mov_bloc{
    max-width: 1320px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_mov_title{
    margin-bottom: 80px;
}
.Top_mov_box {
    position: relative;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  max-width: 960px; /* PCでの最大幅 */
    padding-top: 41%;
    margin-bottom: 50px;
}
.Top_mov_box img{}
.Top_mov_coment{
    font-size: 19px;
    line-height: 1.77;
    text-align: left;
    margin-bottom: 60px;
    text-align: center;
    color: #FFFFFF;
}
/* トップ GUIDE */
.Top_guide_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
}
.Top_guide_bloc{
    max-width: 1320px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_guide_title{
    margin-bottom: 80px;
}
.Top_guide_list{
    display: flex;
    justify-content: space-between;
}
.Top_guide_item{
    width: 400px;
    border-radius: 10px;
	box-shadow: inset 0 0 0 3px #e61112;
}

.Top_guide_item_title{
    font-size: 36px;
    font-weight: 700;
    background-color: #E61112;
    color: #FFFFFF;
    border-radius: 6px 6px 0px 0px;
    padding-bottom: 25px;
    padding-top: 22px;
    background-image: url(../img/top/guide_bg.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}
.Top_guide_item_img{
    padding-top: 40px;
    padding-bottom: 30px;
}
.Top_guide_item_img img{}
.Top_guide_item_coment{
    margin-left: 30px;
    margin-right: 30px;
    font-size: 19px;
    line-height: 1.77;
    text-align: left;
    text-align: justify;
    margin-bottom: 40px;
}
.Top_guide_item_btm{
    margin-bottom: 40px;
}
.Top_guide_item_btm a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
}
/* トップ NEWS */
.Top_news_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
    background-image: url(../img/all/top_pc_bg.jpg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 100% auto;
}
.Top_news_bloc{
    max-width: 1100px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_news_title{
    margin-bottom: 80px;
}
.Top_news_list{}
.Top_news_item{
    background-color: #F9F9F9;
    padding-left: 50px;
    padding-right: 50px;
    padding-top: 35px;
    border-radius: 10px 0px 10px 0px;
    padding-bottom: 35px;
    display: flex;
    margin-bottom: 20px;
}
.Top_news_item:last-of-type{
    margin-bottom: 0px;
}
.Top_news_item_img{
    margin-right: 40px;
}
.Top_news_item_img img{}
.Top_news_item_txt{
    text-align: left;
}
.Top_news_item_txt_date{
    font-size: 15px;
    padding-top: 15px;
    padding-bottom: 20px;
}
.Top_news_item_txt_title{
    font-size: 21px;
    line-height: 100%;
    padding-bottom: 15px;
}
.Top_news_item_txt_coment{
    font-size: 15px;
    line-height: 1.77;
}
/* トップ その他の案内 */
.Top_etc_info_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
}
.Top_etc_info_bloc{
    max-width: 1430px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_etc_info_list{
    display: flex;
    justify-content: space-between;
}
.Top_etc_info_item01{
    padding-top: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    padding-left: 40px;
    border: 5px solid #06C755;
    border-radius: 10px;
}
.Top_etc_info_item02{
    padding-top: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    padding-left: 40px;
    border: 5px solid #e61112;
    border-radius: 10px;
    margin-left: 10px;
    margin-right: 10px;
}
.Top_etc_info_item02:last-of-type{
    margin-left: 0px;
    margin-right: 0px;
}
.Top_etc_info_item01_main_img img{
    height: 340px;
    margin-bottom: 40px;
}
.Top_etc_info_item02_main_img img{
    height: 340px;
    margin-bottom: 40px;
}
.Top_etc_info_item_coment{
    font-size: 19px;
    line-height: 1.77;
    text-align: left;
    height: 120px;
    text-align: justify;
}
.Top_etc_info_item_btm{}
section{
    padding-top: 90px;
}
.Page_hed_txt_box{
    display: flex;
    align-items: center;
    max-width: 1110px;
    width: 90%;
    height: 550px;
    margin-left: auto;
    margin-right: auto;
}
.Page_hed_txt{}
.Page_hed_txt h3{
    font-family: "Noto Serif JP", serif;
    font-size: 48px;
    color: #FFFFFF;
}
.Page_hed_txt h4{
    font-size: 21px;
    color: #FFFFFF;
}
/* ページ共通 メッセージ */
.Page_message_hed_img{
    height: 550px;
    background-image: url(../img/message/main_img_bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}
.Page_message_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
    background-image: url(../img/top/theme_bg_01.png);
    background-repeat: no-repeat;
    background-position: left 50px;
    background-size: auto 1400px;
}
.Page_message_bloc{
    max-width: 1410px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Page_message_box{
}
.Page_message_box_tilte{
    margin-bottom: 90px;
}
.Page_message_list01{
    display: flex;
    justify-content: space-between;
    margin-bottom: 90px;
}
.Page_message_list02{
    display: flex;
    justify-content: space-between;
    margin-bottom: 90px;
}
.Page_message_item_img{
    width: 48%;
}
.Page_message_item_img img{
    width: 100%;
}
.Page_message_item_txt{
    width: 49%;
    text-align: left;
}
.Page_message_item_title_01{
    font-size: 56px;
    color: #FF0004;
    font-weight: 700;
    line-height: 1.27;
}
.Page_message_item_title_02{
    font-size: 56px;
    font-weight: 700;
    line-height: 1.27;
    margin-bottom: 50px;
}
.Page_message_item_coment{
    font-size: 19px;
    line-height: 1.77;
}
.Page_message_item_coment p{
    margin-bottom: 40px;
}
.Page_message_item_name p{
    font-size: 19px;
    line-height: 1.77;
    font-weight: 700;
}
/* ページ共通 講演 */
.Page_lecture_hed_img{
    height: 550px;
    background-image: url(../img/lecture/main_img_bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}
.Page_lecture_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 0px;
}
.Page_lecture_bloc{}
.Page_lecture_title{
    max-width: 1410px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
}
.Page_lecture_coment {
    margin-bottom: 90px;
}
.Page_lecture_coment p{
    padding-top: 0px;
    font-size: 48px;
    line-height: 1.77;
    font-weight: 700;
    
}
.Page_lecture_txt_red{
    color: #E61112;
    font-weight: 700;
}
.Page_lecture_box01{
    background-image: url(../img/lecture/bg.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    padding-top: 90px;
    margin-bottom: 90px;
}
.Page_lecture_box01_list{
    width: 90%;
    margin-left: auto;
    padding-bottom: 1px;
}
.Page_lecture_box01_list_bloc{
    width: 100%;
    background-color: #FFFFFF;
    margin-bottom: 90px;
    padding-left: 75px;
    padding-right: 75px;
    padding-bottom: 90px;
    padding-top: 90px;
}
.Page_lecture_box01_item{
    max-width: 1410px;
    width: 90%;
    margin-left: 0;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
}
.Page_lecture_box01_item_img{
    margin-right: 75px;
}
.Page_lecture_box01_item_img img{
    width: 456px;
}
.Page_lecture_box01_item_txt_box{
    text-align: left;
}
.Page_lecture_box01_item_title{
    letter-spacing: 2px;
    background-color: #e61112;
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 10px;
    padding-bottom: 15px;
    display: flex;
    width: fit-content; /* これを追加 */
    align-items: baseline;
    color: #FFFFFF;
    margin-top: 27px;
    margin-bottom: 25px;
    white-space: nowrap;
    background-image: url(../img/lecture/date_bg.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.Page_lecture_box01_item_title_01{
    font-size: 36px;
    font-weight: 700;
    margin-right: 30px;
}
.Page_lecture_box01_item_title_02{
    font-size: 21px;
    font-weight: 700;
}
.Page_lecture_box01_item_sub_title{
    letter-spacing: 2px;
    white-space: nowrap;
}
.Page_lecture_box01_item_sub_title_01{
    font-family: "Noto Serif JP", serif;
    font-size: 36px;
    font-weight: 700;
    color: #e61112;
    margin-bottom: 20px;
}
rt {
    color: #000000; /* ルビテキストを赤色に設定 */
}
.Page_lecture_box01_item_sub_title_02{
    font-family: "Noto Serif JP", serif;
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 35px;
}
.Page_lecture_box01_item_profile{
    font-size: 19px;
    line-height: 1.7;
    margin-bottom: 30px;
}
.Page_lecture_box01_item_name{
    line-height: 1.0;
    letter-spacing: 2px;
    display: flex;
    width: fit-content; /* これを追加 */
    align-items: center;
    margin-bottom: 60px;
    white-space: nowrap;
}
.Page_lecture_box01_item_name_01{
    font-size: 48px;
    font-weight: 700;
    margin-right: 30px;
}
.Page_lecture_box01_item_name_01::first-letter {
    color: #E61112; /* 先頭文字を青色にする */
}
.Page_lecture_box01_item_name_02{
    font-size: 21px;
    font-weight: 700;
    color: #999999;
    padding-top: 10px;
}
.Page_lecture_box01_item_name_size_s{
    font-size: 30px;
    font-weight: 700;
}
.Page_lecture_box01_item_coment{
    font-size: 19px;
    line-height: 1.77;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
}
.Page_lecture_box02{
    background-image: url(../img/lecture/bg.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    padding-top: 90px;
}
.Page_lecture_box02_list{
    max-width: 1100px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-left: auto;
    padding-bottom: 90px;
}
.Page_lecture_box02_item{
    width: 100%;
    background-color: #FFFFFF;
    padding-left: 60px;
    padding-right: 60px;
    padding-bottom: 60px;
    padding-top: 60px;
    margin-right: auto;
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}
.Page_lecture_box02_item:last-of-type{
    margin-bottom: 0px;
}
.Page_lecture_box02_item_img{
    margin-right: 60px;
}
.Page_lecture_box02_item_txt_box{
    text-align: left;
}
.Page_lecture_box02_item_title{
    display: flex;
    align-items: center;
    padding-bottom: 5px;
}
.Page_lecture_box02_item_title_01{
    letter-spacing: 2px;
    background-color: #e61112;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    display: flex;
    width: fit-content; /* これを追加 */
    align-items: baseline;
    color: #FFFFFF;
    margin-top: 10px;
    margin-bottom: 10px;
    white-space: nowrap;
    margin-right: 10px;
}
.Page_lecture_box02_item_title_01_01{
    font-size: 21px;
    font-weight: 700;
}
.Page_lecture_box02_item_title_01_02{
    font-size: 21px;
    font-weight: 700;
}
.Page_lecture_box02_item_title_02 p{
    font-size: 21px;
    font-weight: 700;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    color: #FFFFFF;
}
.Page_lecture_box02_item_title_cal_01{
    background-color: #ff931e;
}
.Page_lecture_box02_item_title_cal_02{
    background-color: #003a77;
}
.Page_lecture_box02_item_title_cal_03{
    background-color: #0362af;
}
.Page_lecture_box02_item_title_cal_04{
    background-color: #009245;
}
.Page_lecture_box02_item_sub_title{
    letter-spacing: 2px;
    white-space: nowrap;
}
.Page_lecture_box02_item_sub_title_01{
    font-family: "Noto Serif JP", serif;
    font-size: 34px;
    line-height: 1.3;
    font-weight: 700;
    color: #e61112;
    margin-bottom: 15px;
}
.Page_lecture_box02_item_sub_title_02{
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 700;
    margin-bottom: 30px;
}
.Page_lecture_box02_item_profile{
    font-size: 19px;
    line-height: 1.5;
    margin-bottom: 25px;
}
.Page_lecture_box02_item_name{
    line-height: 1.0;
    letter-spacing: 2px;
    display: flex;
    width: fit-content; /* これを追加 */
    align-items: center;
    margin-bottom: 15px;
    white-space: nowrap;
}
.Page_lecture_box02_item_name_01{
    font-size: 48px;
    font-weight: 700;
    margin-right: 30px;
}
.Page_lecture_box02_item_name_red {
    color: #E61112; /* 先頭文字を青色にする */
    font-weight: 700;
}
.Page_lecture_box02_item_name_02{
    font-size: 21px;
    font-weight: 700;
    color: #999999;
    padding-top: 10px;
}
.Page_lecture_box02_item_name_size_s{
    font-size: 30px;
    font-weight: 700;
}
.Page_lecture_box02_item_cal {}
.Page_lecture_box02_item_cal ul{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 35px;
}
.Page_lecture_box02_item_cal ul li{
    font-size: 18px;
    font-weight: 700;
    background-color: #808080;
    color: #FFFFFF;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 7px;
    margin-right: 10px;
    margin-bottom: 5px;
}
.Page_lecture_box02_item_etc_coment p{
    font-size: 19px;
    font-weight: 700;
    line-height: 1.77;
    margin-bottom: 35px;
    margin-top: -25px;
}
.Page_lecture_box02_item_coment{
    font-size: 19px;
    line-height: 1.77;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
}
  /* 左3つ並びの場合(space-between指定時)
.Page-panel1::after{
      content:"";
      display: block;
      width:30%;
}
  */
  /* 左4つ並びの場合(space-between指定時)
.Page-panel1::before{
      content:"";
      display: block;
      width:23%;
      order:1;
}
.Page-panel1::after{
      content:"";
      display: block;
      width:23%;
}
  */


/* ページ共通 contact */
input, button, textarea, select {}


/* ページ共通 ボタン */
.button01 {
    display: inline-block;
    text-align: center;
    text-decoration: none;
    line-height: 24px;
    outline: none;
    font-size: 14px;
    padding-top: 12px;
    padding-right: 15px;
    padding-bottom: 12px;
    padding-left: 15px;
}
.button01::before,
.button01::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}
.button01,
.button01::before,
.button01::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.button01 {
    background-color: #449F6B;
    border: 2px solid #449F6B;
    color: #fff;
}
.button01:link {
    color: #fff;
}
.button01:hover {
    background-color: #fff;
    border-color: #449F6B;
    color: #449F6B;
}
/* フッター 共通 */
.Foot_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 10px;
    background-image: url(../img/foot/bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}
.Foot_bloc{
    max-width: 1100px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Foot_logo_box{
    margin-bottom: 60px;
}
.Foot_logo_box img{}
.Foot_coment_box{
    font-size: 19px;
    line-height: 1.77;
    margin-bottom: 70px;
    color: #FFFFFF;
    margin-top: 60px;
}
.Foot_cp_box{
    font-size: 12px;
    line-height: 1.77;
    color: #FFFFFF;
}
/*　リストアイコン軍　*/

/* 非表示 */
.pc-hide{
    /*<br / class="pc-hide">*/
    display: none;
}
/*　アンカーマージン　*/
.anchor {
    padding-top: 60px;
    margin-top: -60px;
    display:inline-block;
}
/* 近日公開用 */
.Page_coming_soon_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
}
.Page_coming_soon_bloc{
    max-width: 1410px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Page_coming_soon_bloc h3{
    font-size: 38px;
    line-height: 1.77;
    font-weight: 700;
    margin-bottom: 20px;
}
.Page_coming_soon_bloc h4{
    font-size: 24px;
    line-height: 1.77;
    font-weight: 700;
    margin-bottom: 50px;
}
}
@media screen and (max-width: 828px){
/**************************
スマホ用スタイル
**************************/
/* ヘッダ */
.Hed_bg{
    width: 100%;
    margin-bottom: -50px;
    margin-top: 50px;
}
.Hed_bloc{
    /* max-width: 1280px; */
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    background-color: #004CFF;
}
.Hed_bloc p {
    margin: 0;        /* pタグの上下余白を削除 */
    line-height: 0;   /* 行の高さによる隙間を排除 */
}
.Hed_bloc img{
    width: 100%;

}
.Hed_menu_box{
    width: 100%;
    position: fixed;
    top: 0px;
    background-color: #e94738;
    height: 50px;
    z-index: 100; /* ヘッダー全体をオーバーレイより手前に出す */
    background-image: url(../img/foot/bg.png);
    background-position: center center;
    background-size: 100% auto;
}
.Hed_menu_logo{
    padding-top: 12px;
    text-align: left;
    margin-left: 10px;
}
.Hed_menu_logo img{
    height: 30px;
}
.Hed_menu_bg{}
.Hed_menu_bloc{}
/* 背景固定用のクラス */
body.is-fixed {
    overflow: hidden;
    height: 100vh;
}
/* オーバーレイ（背景を暗くする幕） */
.menu-overlay {
    display: none; /* 初期状態は非表示 */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6); /* 黒の60%透過 */
    z-index: 10; /* メニュー(z-index: 20)より下、コンテンツより上 */
}
.spmenu_btn {
    display: block;
    position: absolute;
    top: 12px;
    width: 30px;
    height: 22px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    z-index: 20;
    padding: 0px;
    right: 5px;
    margin: 0px;
    border-top-width: 0px;
    border-right-width: 0px;
    border-bottom-width: 0px;
    border-left-width: 0px;
    border-top-style: none;
    border-right-style: none;
    border-bottom-style: none;
    border-left-style: none;
    z-index: 31;
}
.spmenu_btn hr {
    margin: 0px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-bottom-color: #FFF;
    padding-top: 8.5px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    border-right-style: none;
    border-left-style: none;
    border-top-width: 2px;
    border-top-style: solid;
    border-top-color: #FFF;
}
.spmenu_btn:before {
    content: '';
    position: absolute;
    width: 30px;
    height: 2px;
    top: 0px;
    right: 0;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    background-color: #FFF;
}
.spmenu_btn:after {
    content:'';
    position:absolute;
    width:30px;
    height:2px;
    background:#FFF;
    bottom:-0px;
    right:0;
    -moz-transition:all 0.3s;
    -webkit-transition:all 0.3s;
    transition:all 0.3s;
}
.spmenu_btn.active {
    top: 5px;
    background-color: #A80002;
    -webkit-border-radius: 25px;     /* for Safari and Chrome */
    -moz-border-radius: 25px;    /* for Firefox */
    -o-border-radius: 25px;  /* when Opera Presto 2.3 or later is released */
    -khtml-border-radius: 25px;   /* Linux browsers */
    border-radius: 25px;     /* CSS3 */
    behavior: url(PIE.htc);
    height: 40px;
    width: 40px;
}
.spmenu_btn.active hr {
    margin: 0px;
    padding: 0px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-bottom-color: #FFF;
    display: none;
}
.spmenu_btn.active:before {
    -moz-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    top:20px;
    right: 0px;
    left: 5px;
    bottom: 0px;
}
.spmenu_btn.active:after {
    -moz-transform:rotate(135deg);
    -webkit-transform:rotate(135deg);
    transform:rotate(135deg);
    top:20px;
    right: 0px;
    left: 5px;
    bottom: 0px;
}

.spmenu {
    display: none;
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    background-color: #e94738;
    z-index: 30; /* オーバーレイ(10)やボタン(20)より大きい数字にする */
    background-image: url(../img/foot/bg.png);
    background-position: center center;
    background-size: 980px auto;
}
.spmenu nav {
    display:block;
    width:100%;
    margin:0 auto;
}
.spmenu nav li a {
    font-family: "Noto Serif JP", serif;
    font-size: 22px;
    line-height: 1.77;
    display: block;
    width: 100%;
    color: #FFF;
    padding: 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #FFF;
    text-decoration: none;
    font-weight: 700;
}
.Page_menu_logo{
    display: none;
}
/* トップ THEME */
.Top_theme_bg{
    padding-top: 45px;
    padding-bottom: 45px;
}
.Top_theme_bloc{
    max-width: 1500px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    background-image: url(../img/top/theme_bg_02.png);
    background-repeat: no-repeat;
    background-position: right 120px;
    background-size: 40% auto;
}
.Top_theme_box1{
    max-width: 1100px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_theme_title_01{
    font-size: 16px;
    color: #e61112;
    margin-bottom: 30px;
}
.Top_theme_title_02{
    font-size: 26px;
    line-height: 1.77;
    color: #e61112;
    font-family: Shippori Mincho, sans-serif;
    margin-bottom: 70px;
}
.Top_theme_coment{
    font-size: 16px;
    line-height: 1.77;
    text-align: left;
    text-align: justify;
    margin-bottom: 60px;
}
.Top_theme_btm{
    margin-bottom: 85px;
}
.Top_theme_btm a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
}
.Top_theme_point_list{
    max-width: 1320px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between ;
}
.Top_theme_point_item{
    max-width: 620px;
    margin-bottom: 50px;
    padding-bottom: 0px;
    border-bottom: 1px solid #999999;
}
.Top_theme_point_item_title{
    font-size: 30px;
    font-family: Shippori Mincho, sans-serif;
    text-align: left;
    margin-bottom: 30px;
}
.Top_theme_point_item_title p{
    font-weight: 700;
}
.Top_theme_point_item_title img{
    width: 80px;
    margin-right: 15px;
}
.Top_theme_point_item_coment{
    font-size: 16px;
    line-height: 1.77;
    text-align: left;
    margin-bottom: 50px;
    text-align: justify;
}
/* トップ MOV */
.Top_mov_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
    background-image: url(../img/top/mov_bg.jpg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: auto 100%;
}
.Top_mov_bloc{
    max-width: 1320px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_mov_title{
    margin-bottom: 80px;
}
.Top_mov_title img{
    height: 70px;
}
.Top_mov_box {
  position: relative;
  width: 100%;
    margin-left: auto;
    margin-right: auto;
  max-width: 960px; /* PCでの最大幅 */
  padding-top: 56.25%; /* 16:9の比率を維持 */
    margin-bottom: 50px;
}
.Top_mov_box img{
    width: 100%;
}
.Top_mov_coment{
    font-size: 16px;
    line-height: 1.77;
    text-align: left;
    margin-bottom: 0px;
    text-align: center;
    color: #FFFFFF;
}
/* トップ GUIDE */
.Top_guide_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
}
.Top_guide_bloc{
    max-width: 1320px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_guide_title{
    margin-bottom: 80px;
}
.Top_guide_title img{
    height: 70px;
}
.Top_guide_list{

}
.Top_guide_item{
    width: 100%;
    border-radius: 10px;
    box-shadow: inset 0 0 0 3px #e61112;
    margin-bottom: 80px;
    padding-bottom: 1px;
}
.Top_guide_item:last-of-type{
    margin-bottom: 0px;
}
.Top_guide_item_title{
    font-size: 36px;
    font-weight: 700;
    background-color: #E61112;
    color: #FFFFFF;
    border-radius: 6px 6px 0px 0px;
    padding-bottom: 18px;
    padding-top: 15px;
    background-image: url(../img/top/guide_bg.jpg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}
.Top_guide_item_img{
    padding-top: 40px;
    padding-bottom: 30px;
}
.Top_guide_item_img img{
    width: 90%;
}
.Top_guide_item_coment{
    margin-left: 30px;
    margin-right: 30px;
    font-size: 16px;
    line-height: 1.77;
    text-align: left;
    text-align: justify;
    margin-bottom: 40px;
}
.Top_guide_item_btm{
    margin-bottom: 40px;
}
.Top_guide_item_btm a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
}
/* トップ NEWS */
.Top_news_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
    background-image: url(../img/all/news_bg_sp.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 100% auto;
}
.Top_news_bloc{
    max-width: 1320px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_news_title{
    margin-bottom: 80px;
}
.Top_news_title img{
    height: 70px;
}
.Top_news_list{}
.Top_news_item{
    width: 100%;
    background-color: #F9F9F9;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 35px;
    border-radius: 10px 0px 10px 0px;
    padding-bottom: 35px;
    margin-bottom: 20px;
}
.Top_news_item:last-of-type{
    margin-bottom: 0px;
}
.Top_news_item_img{}
.Top_news_item_img img{
    width: 100%;
}
.Top_news_item_txt{
    text-align: left;
}
.Top_news_item_txt_date{
    font-size: 15px;
    padding-top: 10px;
    padding-bottom: 10px;
}
.Top_news_item_txt_title{
    font-size: 21px;
    line-height: 100%;
    padding-bottom: 20px;
}
.Top_news_item_txt_coment{
    font-size: 15px;
    line-height: 1.77;
}
/* トップ その他の案内 */
.Top_etc_info_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
}
.Top_etc_info_bloc{
    max-width: 1430px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Top_etc_info_list{}
.Top_etc_info_item01{
    width: 100%;
    padding-top: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    padding-left: 40px;
    border: 5px solid #06C755;
    border-radius: 10px;
    margin-bottom: 40px;
}
.Top_etc_info_item02{
    width: 100%;
    padding-top: 40px;
    padding-right: 40px;
    padding-bottom: 40px;
    padding-left: 40px;
    border: 5px solid #e61112;
    border-radius: 10px;
    margin-bottom: 40px;
}
.Top_etc_info_item02:last-of-type{
    margin-bottom: 0px;
}
.Top_etc_info_item01_main_img img{
    height: 180px;
    margin-bottom: 40px;
}
.Top_etc_info_item02_main_img img{
    height: 180px;
    margin-bottom: 40px;
}
.Top_etc_info_item_coment{
    font-size: 16px;
    line-height: 1.77;
    text-align: left;
    text-align: justify;
    margin-bottom: 40px;
}
.Top_etc_info_item_btm{}
.Top_etc_info_item_btm img{
    width: 100%;
}
section{
    padding-top: 50px;
    background-image: url(../img/page/bg.png);
    background-repeat: no-repeat;
    background-position: left 100px;
    background-size: auto 200px;
}
.Page_hed_txt_box{
    display: flex;
    align-items: center;
    max-width: 1110px;
    width: 90%;
    height: 300px;
    margin-left: auto;
    margin-right: auto;
}
.Page_hed_txt{}
.Page_hed_txt h3{
    font-family: "Noto Serif JP", serif;
    font-size: 40px;
    color: #FFFFFF;
}
.Page_hed_txt h4{
    font-size: 21px;
    color: #FFFFFF;
    text-align: left;
    margin-left: 10px;
}
/* ページ共通 メッセージ */
.Page_message_hed_img{
    height: 300px;
    background-image: url(../img/message/main_img_bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 300px;
}
.Page_message_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 90px;
}
.Page_message_bloc{
    max-width: 1410px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Page_message_box{}
.Page_message_box_tilte{
    margin-bottom: 90px;
}
.Page_message_box_tilte img{
    height: 50px;
}
.Page_message_list01{
    display: flex;
    flex-direction: column;
    margin-bottom: 90px;
}
.Page_message_list02{
    display: flex;
    flex-direction: column-reverse;
    margin-bottom: 90px;
}
.Page_message_item_img{
    width: 100%;
    margin-bottom: 40px;
}
.Page_message_item_img img{
    width: 100%;
}
.Page_message_item_txt{
    width: 100%;
    text-align: left;
}
.Page_message_item_title_01{
    font-size: 30px;
    color: #FF0004;
    font-weight: 700;
    line-height: 1.57;
}
.Page_message_item_title_02{
    font-size: 30px;
    font-weight: 700;
    line-height: 1.57;
    margin-bottom: 50px;
}
.Page_message_item_coment{
    font-size: 16px;
    line-height: 1.77;
}
.Page_message_item_coment p{
    margin-bottom: 20px;
}
.Page_message_item_name p{
    font-size: 14px;
    line-height: 1.77;
    font-weight: 700;
}
/* ページ共通 講演 */
.Page_lecture_hed_img{
    height: 300px;
    background-image: url(../img/lecture/main_img_bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 300px;
}
.Page_lecture_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 0px;
    background-image: url(url);
}
.Page_lecture_bloc{}
.Page_lecture_title{
    max-width: 1410px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
}
.Page_lecture_title img{
   height: 50px;
}
.Page_lecture_coment {
    margin-bottom: 90px;
}
.Page_lecture_coment p{
    padding-top: 0px;
    font-size: 22px;
    line-height: 1.77;
    font-weight: 700;
    
}
.Page_lecture_txt_red{
    color: #E61112;
    font-weight: 700;
}
.Page_lecture_box01{
    background-image: url(../img/lecture/bg.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto 100%;
    padding-top: 90px;
    margin-bottom: 90px;
}
.Page_lecture_box01_list{
    width: 96%;
    margin-left: auto;
    padding-bottom: 1px;
}
.Page_lecture_box01_list_bloc{
    width: 100%;
    background-color: #FFFFFF;
    margin-bottom: 40px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 40px;
    padding-top: 40px;
}
.Page_lecture_box01_item{
    max-width: 1410px;
    width: 100%;
    margin-left: 0;
    margin-right: auto;
}
.Page_lecture_box01_item_img{
}
.Page_lecture_box01_item_img img{
    width: 100%;
}
.Page_lecture_box01_item_txt_box{
    text-align: left;
}
.Page_lecture_box01_item_title{
    letter-spacing: 2px;
    background-color: #e61112;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 10px;
    padding-bottom: 15px;
    align-items: baseline;
    color: #FFFFFF;
    margin-top: 27px;
    margin-bottom: 25px;
}
.Page_lecture_box01_item_title_01{
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 15px;
}
.Page_lecture_box01_item_title_02{
    font-size: 18px;
    font-weight: 700;
}
.Page_lecture_box01_item_sub_title{
    letter-spacing: 2px;
}
.Page_lecture_box01_item_sub_title_01{
    font-family: "Noto Serif JP", serif;
    font-size: 26px;
    font-weight: 700;
    color: #e61112;
    margin-bottom: 20px;
}
rt {
    color: #000000; /* ルビテキストを赤色に設定 */
}
.Page_lecture_box01_item_sub_title_02{
    font-family: "Noto Serif JP", serif;
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 35px;
}
.Page_lecture_box01_item_profile{
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 30px;
}
.Page_lecture_box01_item_name{
    line-height: 1.0;
    letter-spacing: 2px;
    align-items: center;
    margin-bottom: 60px;
}
.Page_lecture_box01_item_name_01{
    font-size: 40px;
    font-weight: 700;
    margin-right: 30px;
}
.Page_lecture_box01_item_name_01::first-letter {
    color: #E61112; /* 先頭文字を青色にする */
}
.Page_lecture_box01_item_name_02{
    font-size: 18px;
    font-weight: 700;
    color: #999999;
    padding-top: 10px;
}
.Page_lecture_box01_item_name_size_s{
    font-size: 30px;
    font-weight: 700;
}
.Page_lecture_box01_item_coment{
    font-size: 16px;
    line-height: 1.77;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
}
.Page_lecture_box02{
    background-image: url(../img/lecture/bg.png);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto 100%;
    padding-top: 90px;
}
.Page_lecture_box02_list{
    max-width: 1100px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    margin-left: auto;
    padding-bottom: 90px;
}
.Page_lecture_box02_item{
    width: 100%;
    background-color: #FFFFFF;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 20px;
    padding-top: 20px;
    margin-bottom: 60px;
}
.Page_lecture_box02_item:last-of-type{
    margin-bottom: 0px;
}
.Page_lecture_box02_item_img{
}
.Page_lecture_box02_item_img img{
    width: 100%;
}
.Page_lecture_box02_item_txt_box{
    text-align: left;
}
.Page_lecture_box02_item_title{
    display: flex;
    align-items: center;
    padding-bottom: 5px;
}
.Page_lecture_box02_item_title_01{
    letter-spacing: 2px;
    background-color: #e61112;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    display: flex;
    width: fit-content; /* これを追加 */
    align-items: baseline;
    color: #FFFFFF;
    margin-top: 10px;
    margin-bottom: 10px;
    white-space: nowrap;
    margin-right: 10px;
}
.Page_lecture_box02_item_title_01_01{
    font-size: 14px;
    font-weight: 700;
}
.Page_lecture_box02_item_title_01_02{
    font-size: 14px;
    font-weight: 700;
}
.Page_lecture_box02_item_title_02 p{
    font-size: 14px;
    font-weight: 700;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    color: #FFFFFF;
}
.Page_lecture_box02_item_title_cal_01{
    background-color: #ff931e;
}
.Page_lecture_box02_item_title_cal_02{
    background-color: #003a77;
}
.Page_lecture_box02_item_title_cal_03{
    background-color: #0362af;
}
.Page_lecture_box02_item_title_cal_04{
    background-color: #009245;
}
.Page_lecture_box02_item_sub_title{
    letter-spacing: 2px;
    white-space: nowrap;
}
.Page_lecture_box02_item_sub_title_01{
    font-family: "Noto Serif JP", serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.27;
    color: #e61112;
    margin-bottom: 15px;
}
.Page_lecture_box02_item_sub_title_02{
    font-family: "Noto Serif JP", serif;
    font-size: 16px;
    line-height: 1.27;
    font-weight: 700;
    margin-bottom: 30px;
}
.Page_lecture_box02_item_profile{
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 25px;
}
.Page_lecture_box02_item_name{
    line-height: 1.0;
    letter-spacing: 2px;
    margin-bottom: 30px;
}
.Page_lecture_box02_item_name_01{
    font-size: 48px;
    font-weight: 700;
}
.Page_lecture_box02_item_name_red {
    color: #E61112; /* 先頭文字を青色にする */
    font-weight: 700;
}
.Page_lecture_box02_item_name_02{
    font-size: 21px;
    font-weight: 700;
    color: #999999;
    padding-top: 10px;
}
.Page_lecture_box02_item_name_size_s{
    font-size: 30px;
    font-weight: 700;
}
.Page_lecture_box02_item_cal {}
.Page_lecture_box02_item_cal ul{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 35px;
}
.Page_lecture_box02_item_cal ul li{
    font-size: 18px;
    font-weight: 700;
    background-color: #808080;
    color: #FFFFFF;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 7px;
    margin-right: 10px;
    margin-bottom: 5px;
}
.Page_lecture_box02_item_etc_coment{
    font-size: 16px;
    line-height: 1.77;
    margin-bottom: 35px;
}
.Page_lecture_box02_item_coment{
    font-size: 16px;
    line-height: 1.77;
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
}
  /* 左3つ並びの場合(space-between指定時)
.Page-panel1::after{
      content:"";
      display: block;
      width:30%;
}
  */
  /* 左4つ並びの場合(space-between指定時)
.Page-panel1::before{
      content:"";
      display: block;
      width:23%;
      order:1;
}
.Page-panel1::after{
      content:"";
      display: block;
      width:23%;
}
  */


/* ページ共通 contact */
input, button, textarea, select {}


/* ページ共通 ボタン */
.button01 {
    display: inline-block;
    text-align: center;
    text-decoration: none;
    line-height: 24px;
    outline: none;
    font-size: 14px;
    padding-top: 12px;
    padding-right: 15px;
    padding-bottom: 12px;
    padding-left: 15px;
}
.button01::before,
.button01::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
}
.button01,
.button01::before,
.button01::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.button01 {
    background-color: #449F6B;
    border: 2px solid #449F6B;
    color: #fff;
}
.button01:link {
    color: #fff;
}
.button01:hover {
    background-color: #fff;
    border-color: #449F6B;
    color: #449F6B;
}
/* フッター 共通 */
.Foot_bg{
    width: 100%;
    padding-top: 90px;
    padding-bottom: 10px;
    background-image: url(../img/foot/bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 100%;
}
.Foot_bloc{
    max-width: 1100px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Foot_bloc .Hed_menu_bloc{
    display: none;
}
.Foot_logo_box{
    margin-bottom: 60px;
}
.Foot_logo_box img{
    width: 90%;
}
.Foot_logo_box img{}
.Foot_coment_box{
    font-size: 16px;
    line-height: 1.77;
    margin-bottom: 70px;
    color: #FFFFFF;
    margin-top: 60px;
}
.Foot_cp_box{
    font-size: 12px;
    line-height: 1.77;
    color: #FFFFFF;
}

/*　リストアイコン軍　*/

/* 非表示 */
.sp-hide{
    /*<br / class="sp-hide">*/
    display: none;
}
/*　アンカーマージン　*/
.anchor {
    padding-top: 60px;
    margin-top: -60px;
    display:inline-block;
}
/* 近日公開用 */
.Page_coming_soon_bg{
    width: 100%;
    padding-top: 40px;
    padding-bottom: 90px;
}
.Page_coming_soon_bloc{
    max-width: 1410px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.Page_coming_soon_bloc h3{
    font-size: 38px;
    line-height: 1.77;
    font-weight: 700;
    margin-bottom: 20px;
}
.Page_coming_soon_bloc h4{
    font-size: 14px;
    line-height: 1.7;
    font-weight: 700;
    margin-bottom: 50px;
}


}
/**************************
PC・スマホ共に同じスタイル
**************************/

/*　フロートリセット　*/
.cl{
    /*<div class="cl"></div>*/
	line-height: 0px;
	clear: both;
	height: 0px;
}
#youtube-player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
