body {
}

#container #pankuzu_wrap {
    background: #E5F9F2;
    font-size: 1.3rem;
    padding: 18px 20px 2px;
}

#container #pankuzu_wrap > div {
    margin: 0 auto 16px;
}

#container #pankuzu_wrap .icon_current {
    background: #ffffff;
    border-radius: 4px;
    color: #333333;
}

#container #pankuzu_wrap #footstep_ttl {
    background: #ffffff;
    border-radius: 4px;
    color: #333333;
}

#container #main {
    font-size: 1.6rem;
}

#container #mymainback {
    padding-top: 64px;
}

#container #mymainback .toc_link_wrap {
    display: none;
}

div#main_header_life3_1 {
    background-image: url(/img/life/life3_1_title.png);
}
div#main_header_life3_2 {
    background-image: url(/img/life/life3_2_title.png);
}
div#main_header_life3_3 {
    background-image: url(/img/life/life3_3_title.png);
}
div#main_header_life3_4 {
    background-image: url(/img/life/life3_4_title.png);
}
div#main_header_life3_5 {
    background-image: url(/img/life/life3_5_title.png);
}
div#main_header_life3_6 {
    background-image: url(/img/life/life3_6_title.png);
}
div#main_header_life3_7 {
    background-image: url(/img/life/life3_7_title.png);
}

#container #mymainback #main_header {
    margin-bottom: 32px;
}
#container #mymainback #main_header h1 {
    position: relative;
    border: none;
    background: #E5F9F2;
    color: #333333;
    padding: 14px 24px 14px;
    font-size: 3.2rem;
    background-image: url(/img/common/h1_bg.jpg);
    background-size: cover;
    font-family: "Zen Maru Gothic";
}

#container #mymainback .content_header_wrap {
    font-size: 1.6rem;
}
#container #mymainback .content_header_wrap #content_header {
    display: flex;
    gap: 32px;
    flex-wrap: wrap;
    margin-bottom: 32px;
    justify-content: end;
}

#container #mymainback #sidebar1,
#container #mymainback #sidebar2 {
}
#container #mymainback #sidebar1 > div,
#container #mymainback #sidebar2 > div {
    margin-bottom: 32px;
}
#container #mymainback #sidebar1 > div:empty ,
#container #mymainback #sidebar2 > div:empty  {
    margin-bottom: 0px;
}

#container #mymainback #sidebar1 #important_noticest_area,
#container #mymainback #sidebar2 #important_noticest_area {
}
#container #mymainback #sidebar1 .second_important,
#container #mymainback #sidebar2 .second_important {
    background: #ffffff;
    border: 2px solid #CC0000;
}
#container #mymainback #sidebar1 #second_important #second_important_ttl,
#container #mymainback #sidebar2 #second_important #second_important_ttl {
    font-size: 1.6rem;
    margin: 0 0 20px;
}
#container #mymainback #sidebar1 #second_important .link_box,
#container #mymainback #sidebar2 #second_important .link_box {
    text-align: center;
}
#container #mymainback #sidebar1 #second_important .link_box a,
#container #mymainback #sidebar2 #second_important .link_box a {
    padding: 5px 34px;
    border-radius: 4px;
    border: 1px solid #CC0000;
    margin: 0 0 10px;
    display: inline-block;
    text-decoration: none;
    font-weight: bold;
    font-size: 1.3rem;
}

#container #mymainback #sidebar1 #sidebar_recommend,
#container #mymainback #sidebar2 #sidebar_recommend {
    background: #E5F9F2;
}
#container #mymainback #sidebar1 #recommend_title,
#container #mymainback #sidebar2 #recommend_title {
    background: #E5F9F2;
    text-align: left;
    padding: 13px 16px;
    font-size: 1.6rem;
    color: #333333;
}
#container #mymainback #sidebar1 #sidebar_ai_recommend,
#container #mymainback #sidebar2 #sidebar_ai_recommend {
    background: #E5F9F2;
}
#container #mymainback #sidebar1 #ai_recommend_title,
#container #mymainback #sidebar2 #ai_recommend_title {
    background: #E5F9F2;
    text-align: left;
    padding: 13px 16px;
    font-size: 1.6rem;
    color: #333333;
}
#container #mymainback #sidebar1 #common_banner_link,
#container #mymainback #sidebar2 #common_banner_link {
}
#container #mymainback #sidebar1 #common_banner_link ul,
#container #mymainback #sidebar2 #common_banner_link ul {
}
#container #mymainback #sidebar1 #common_banner_link ul li,
#container #mymainback #sidebar2 #common_banner_link ul li {
    margin-bottom: 32px;
}
#container #mymainback #sidebar1 #common_banner_link ul li a,
#container #mymainback #sidebar2 #common_banner_link ul li a {
    background: #E5F9F2;
    position: relative;
    color: #333333;
}
#container #mymainback #sidebar1 #common_banner_link ul li a::after,
#container #mymainback #sidebar2 #common_banner_link ul li a::after {
    content: "";
    width: calc(100% - 16px);
    height: calc(100% - 12px);
    display: block;
    background: none;
    position: absolute;
    left: 50%;
    top: 50%;
    pointer-events: none;
    transform: translate(-50%, -50%);
    border-left: 2px dashed #FFA600;
    border-right: 2px dashed #FFA600;
}
#container #mymainback #sidebar1 #kanren_link,
#container #mymainback #sidebar2 #kanren_link {
    background: #E5F9F2;
}
#container #mymainback #sidebar1 #kanren_link #kanren_link_ttl h2,
#container #mymainback #sidebar2 #kanren_link #kanren_link_ttl h2 {
    background: none;
}
#container #mymainback #sidebar1 #kanren_link #kanren_link_list ul,
#container #mymainback #sidebar2 #kanren_link #kanren_link_list ul {
    padding: 6px 32px 32px;
}
#container #mymainback #sidebar1 #kanren_link #kanren_link_list ul li::marker,
#container #mymainback #sidebar2 #kanren_link #kanren_link_list ul li::marker {
    color: #FFA600;
}
#container #mymainback #sidebar1 #kanren_info,
#container #mymainback #sidebar2 #kanren_info {
    background: #E5F9F2;
}
#container #mymainback #sidebar1 #kanren_info h3,
#container #mymainback #sidebar2 #kanren_info h3 {
    background: #E5F9F2;
}
#container #mymainback #sidebar1 .side_box,
#container #mymainback #sidebar2 .side_box {
    background: #E5F9F2;
}
#container #mymainback #sidebar1 .side_box .side_box_ttl,
#container #mymainback #sidebar2 .side_box .side_box_ttl {
    padding: 24px 24px 0;
}
#container #mymainback #sidebar1 .side_box .side_box_ttl h2,
#container #mymainback #sidebar2 .side_box .side_box_ttl h2 {
    background: #E5F9F2;
    padding: 10px;
}
#container #mymainback #sidebar1 #subsite_menu_wrap,
#container #mymainback #sidebar2 #subsite_menu_wrap {
    background: #E5F9F2;
    padding: 0 0 24px;
}
#container #mymainback #sidebar1 #subsite_menu_wrap .subsite_menu,
#container #mymainback #sidebar2 #subsite_menu_wrap .subsite_menu {
    background: #E5F9F2;
}
#container #mymainback #sidebar1 #subsite_menu_wrap .subsite_menu .subsite_menu_ttl,
#container #mymainback #sidebar2 #subsite_menu_wrap .subsite_menu .subsite_menu_ttl {
    padding: 24px 24px 0;
    background: none;
}
#container #mymainback #sidebar1 #subsite_menu_wrap .subsite_menu .subsite_menu_ttl span,
#container #mymainback #sidebar2 #subsite_menu_wrap .subsite_menu .subsite_menu_ttl span {
    display: block;
    padding: 10px;
    background: #E5F9F2;
}
#container #mymainback #sidebar1 #subsite_menu_wrap .subsite_menu .subsite_menu_list ul li::marker,
#container #mymainback #sidebar2 #subsite_menu_wrap .subsite_menu .subsite_menu_list ul li::marker {
    color: #FFA600;
}

#container #mymainback #main_body {
    /* padding-top: 64px; */
}

#container #mymainback #main_body h2 {
    background: #E5F9F2;
    position: relative;
    padding: 14px 20px 14px 34px;
    font-size: 2.4rem;
    margin: 32px 0;
    color: #333333;
}

#container #mymainback #main_body h2::before {
    content: "";
    width: 4px;
    height: 54%;
    background: #74DBD3;
    position: absolute;
    left: 18px;
    top: 50%;
    transform: translateY(-50%);
}

#container #mymainback #main_body h3 {
    background: #E5F9F2;
    position: relative;
    padding: 12px 20px 12px 34px;
    font-size: 2.4rem;
    margin: 32px 0;
    color: #333333;
    border-bottom: 2px solid #74DBD3;
}

#container #mymainback #main_body h4 {
    background: #E5F9F2;
    position: relative;
    border: none;
    padding: 13px 24px;
    font-size: 2.0rem;
    margin: 32px 0;
    color: #333333;
}

#container #mymainback #main_body h5 {
    background: #E5F9F2;
    position: relative;
    border: none;
    padding: 13px 24px;
    font-size: 1.8rem;
    margin: 32px 0;
}

#container #mymainback #main_body h6 {
    background: #E5F9F2;
    position: relative;
    border: none;
    padding: 6px 24px;
    font-size: 1.6rem;
    margin: 32px 0;
}

#container #mymainback #main_body #hyouka_area_box {
    background: #E5F9F2;
    padding: 32px;
}
#container #mymainback #main_body #hyouka_area_box .system_box {
    background: #E5F9F2;
}
#container #mymainback #main_body #hyouka_area_box .system_box .system_box_waku {
    background: none;
}
#container #mymainback #main_body #hyouka_area_box .system_box .system_box_waku h2 {
    background: none;
    font-size: 1.6rem;
    color: #000000;
    padding: 0;
    margin: 0 0 20px;
}
#container #mymainback #main_body #hyouka_area_box .system_box .system_box_waku h2::after {
    display: none;
}
#container #mymainback #main_body #hyouka_area_box .system_box .system_box_waku .hyouka_box .hyouka_box_detail {
    border: none;
}
#container #mymainback #main_body #hyouka_area_box .system_box .system_box_waku #hyouka_area_submit {
    text-align: left;
}
#container #mymainback #main_body #hyouka_area_box .system_box .system_box_waku #hyouka_area_submit input[type=submit] {
    border: 1px solid #74DBD3;
    border-radius: 4px;
    font-size: 1.3rem;
    padding: 6px;
}

#container #mymainback #main_body #section_footer {
    background: #FFF3CC;
    padding: 32px;
}
#container #mymainback #main_body #section_footer h2 {
    background: none;
    font-size: 1.6rem;
    color: #000000;
    padding: 0;
    margin: 0 0 20px;
}
#container #mymainback #main_body #section_footer h2::after {
    display: none;
}

#container #mymainback #main_body #content_footer [id^="calendar_button_"] a {
    background-size: contain;
}
#container #mymainback #main_body .calendar_button_wrap {
    margin: 32px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 32px;
}
#container #mymainback #main_body .calendar_button_wrap > a {
    position: relative;
    padding: 0 0 0 32px;
}
#container #mymainback #main_body .calendar_button_wrap > a::before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background: url(/img/common/icon_calendar.png);
    background-size: contain;
    margin: 0 8px 0 0;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
#container #mymainback #main_body .sns_button_wrap {
    margin: 32px 0 32px 0;
}

/** 情報一覧枠 共通 */
#container #mymainback .section_information .article_date {
    width: 11em;
}
#container #mymainback .section_information .article_title {
    padding: 0 0 0 3.5em;
    position: relative;
}
#container #mymainback .section_information .article_title .icon_new {
    position: absolute;
    margin: 0;
    left: 0;
    top: 0.1em;
}

/** 大分類・中分類 */
.tpl_life_list2 div[id^="main_header_life3_"] h1,
.tpl_life_list3 div[id^="main_header_life3_"] h1 {
    font-size: 3.2rem;
    text-shadow: none;
    color: #333333;
    padding: 0 0 0 48px;
}
.tpl_life_list2 #container #mymainback .section_information,
.tpl_life_list3 #container #mymainback .section_information {
    padding: 0;
    background: none;
    margin: 30px 0 64px;
}
.tpl_life_list2 #container #mymainback .section_information .section_information_ttl ,
.tpl_life_list3 #container #mymainback .section_information .section_information_ttl {
    background: #E5F9F2;
    position: relative;
    color: #333333;
    padding: 13px 24px;
    font-size: 2.4rem;
    margin: 0 0 10px;
}
.tpl_life_list2 #container #mymainback .section_information .section_information_list .link_box span ,
.tpl_life_list3 #container #mymainback .section_information .section_information_list .link_box span {
    width: auto;
    margin: 0 12px;
}
.tpl_life_list2 #container #mymainback .section_information .section_information_list .link_box span a ,
.tpl_life_list3 #container #mymainback .section_information .section_information_list .link_box span a {
    background: #ffffff;
    border: 2px solid #EFEFEF;
    border-radius: 1000px;
    color: #333333;
    width: 208px;
    box-sizing: border-box;
    padding: 10px;
    font-size: 1.6rem;
    text-decoration: none;
}
.tpl_life_list2 #container #mymainback .section_information .section_information_list .link_box span a:hover ,
.tpl_life_list3 #container #mymainback .section_information .section_information_list .link_box span a:hover {
    opacity: 0.5;
}

.tpl_life_list2 #container #mymainback #lifestage_wrap ,
.tpl_life_list3 #container #mymainback #lifestage_wrap {
    display: flex;
    gap: 32px;
    margin: 0 0 60px;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box {
    max-width: 524px;
    padding: 38px;
    background: #E5F9F2;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box h2 ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box h2 {
    font-size: 2.4rem;
    text-align: center;
    color: #000000;
    margin: 0 0 20px;
    position: relative;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box h2 span ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box h2 span {
    padding: 0 16px;
    background: #E5F9F2;
    position: relative;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box h2::before ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box h2::before {
    content: "";
    position: absolute;
    display: block;
    width: 100%;
    height: 1px;
    background: #E5F9F2;
    top: 50%;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box ul ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    font-size: 1.3rem;
    gap: 21px;
    padding: 0;
    margin: 0;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box ul li ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box ul li {
    box-sizing: border-box;
    width: 96px;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box ul li a ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box ul li a {
    width: 100%;
    box-sizing: border-box;
    text-decoration: none;
    color: #000000;
    display: flex;
    justify-content: center;
    align-items: start;
    padding: 104px 0 12px 0;
    position: relative;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box ul li a::before ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box ul li a::before {
    content: "";
    width: 96px;
    height: 96px;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 100%;
    background-color: #ffffff;
    background-repeat: no-repeat;
    background-size: 48px;
    background-position: center;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box ul li a:hover ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box ul li a:hover {
    opacity: 0.5;
}
.tpl_life_list2 #container #mymainback #lifestage_wrap .lifestage_box ul li a span ,
.tpl_life_list3 #container #mymainback #lifestage_wrap .lifestage_box ul li a span {
    font-size: 1.3rem;
    text-align: center;
    height: 3em;
    display: flex;
    align-items: start;
}

.tpl_life_list3 #container #mymainback .list_lifestage ul {
    display: flex;
    flex-wrap: wrap;
    gap: 15px 20px;
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li {
    width: 200px;
    border: 1px solid #006CA6;
    border-radius: 8px;
    box-sizing: border-box;
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li a {
    border-radius: 8px;
    background-size: 60px;
    border: 1px solid #74DBD3;
    background-position: top 7px center;
    font-size: 1.6rem;
    text-decoration: none;
    color: #333333;
    font-weight: 700;
    padding: 84px 10px 18px;
    background-color: #E5F9F2;
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li.lifestage01 a {
    background-image: url(/img/lifestage/icon-life01.png);
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li.lifestage02 a {
    background-image: url(/img/lifestage/icon-life02.png);
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li.lifestage03 a {
    background-image: url(/img/lifestage/icon-life03.png);
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li.lifestage04 a {
    background-image: url(/img/lifestage/icon-life04.png);
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li.lifestage05 a {
    background-image: url(/img/lifestage/icon-life05.png);
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li.lifestage06 a {
    background-image: url(/img/lifestage/icon-life06.png);
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li.lifestage07 a {
    background-image: url(/img/lifestage/icon-life07.png);
}

.tpl_life_list3 #container #mymainback .list_lifestage ul li.lifestage08 a {
    background-image: url(/img/lifestage/icon-life08.png);
}


.tpl_life_list2 #container #mymainback #life_cat_list_wrap ,
.tpl_life_list3 #container #mymainback #life_cat_list_wrap {
    gap: 30px;
}
.tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list ,
.tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list {
    width: calc(33.333% - 21.3333px);
    margin: 0;
}
.tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list:nth-child(2n) ,
.tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list:nth-child(2n) {
    /*margin: 0px 30px 30px 0px;*/
}
.tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list:nth-child(3n) ,
.tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list:nth-child(3n) {
    /*margin: 0px 0 30px 0px;*/
}
.tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list h2 ,
.tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list h2 {
    background: #E5F9F2;
    position: relative;
    color: #333333;
    padding: 13px 24px;
    font-size: 2.1rem;
    margin: 0 0 30px;
    text-align: center;
}
.tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list h2::before ,
.tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list h2::before {
    display: none;
}
.tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list h2 a,
.tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list h2 a {
    color: #333333;
}
.tpl_kanren #container #mymainback #lifesub_cat_list_wrap .life_cat_list_ttl {
    background: #E5F9F2;
}

@media screen and (max-width: 750px) {
    .tpl_life_list2 #container #mymainback .section_information .section_information_ttl label[for*="acc_ttl_label"],
    .tpl_life_list3 #container #mymainback .section_information .section_information_ttl label[for*="acc_ttl_label"] {
        background-image: url(/img/sp/acc_open_white.png);
    }
    .tpl_life_list2 #container #mymainback .section_information .section_information_ttl.acc_open label[for*="acc_ttl_label"],
    .tpl_life_list3 #container #mymainback .section_information .section_information_ttl.acc_open label[for*="acc_ttl_label"] {
        background-image: url(/img/sp/acc_close_white.png);
    }
    .tpl_life_list2 #container #mymainback .section_information .section_information_list .link_box ,
    .tpl_life_list3 #container #mymainback .section_information .section_information_list .link_box {
        gap: 20px;
    }
    .tpl_life_list3 #container #mymainback .list_lifestage ul li {
        width: 100%;
    }
    .tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list ,
    .tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list {
        width: 100%;
    }
    .tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list h2 label[for*="acc_ttl_label"],
    .tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list h2 label[for*="acc_ttl_label"] {
        background-image: url(/img/sp/acc_open_white.png);
    }
    .tpl_life_list2 #container #mymainback #life_cat_list_wrap .life_cat_list h2.acc_open label[for*="acc_ttl_label"],
    .tpl_life_list3 #container #mymainback #life_cat_list_wrap .life_cat_list h2.acc_open label[for*="acc_ttl_label"] {
        background-image: url(/img/sp/acc_close_white.png);
    }

}
@media screen and (max-width: 750px) {
    .tpl_life_list2 div[id^="main_header_life3_"],
    .tpl_life_list3 div[id^="main_header_life3_"] {
        background-color: #e5eff0;
        background-position: right bottom;
        height: auto;
        background-size: auto 100%;
        padding: 0;
    }
    .tpl_life_list2 div[id^="main_header_life3_"] h1,
    .tpl_life_list3 div[id^="main_header_life3_"] h1 {
        font-size: 2.8rem;
        height: auto;
        display: inline-block;
        position: relative;
        top: 0;
        transform: none;
        padding: 20px 20px;
    }
}

/** 小分類 */
.tpl_life_list1 #container #mymainback #main_body {
    padding-top: 0;
}

/** 課室・サブサイト */
.tpl_site_index #container #mymainback .section_information,
.tpl_soshiki_kakuka #container #mymainback .section_information {
    padding: 0;
    background: none;
    margin: 30px 0 64px;
}
.tpl_site_index #container #mymainback .section_information .section_information_ttl,
.tpl_soshiki_kakuka #container #mymainback .section_information .section_information_ttl {
    background: #E5F9F2;
    position: relative;
    color: #333333;
    padding: 13px 24px;
    font-size: 2.4rem;
    margin: 0 0 30px;
}
.tpl_site_index #container #mymainback .section_information .section_information_list .link_box span,
.tpl_soshiki_kakuka #container #mymainback .section_information .section_information_list .link_box span {
    width: auto;
    margin: 0 12px;
}
.tpl_site_index #container #mymainback .section_information .section_information_list .link_box span a,
.tpl_soshiki_kakuka #container #mymainback .section_information .section_information_list .link_box span a {
    background: #99D5E2;
    border: none;
    border-radius: 1000px;
    color: #000000;
    width: 208px;
    box-sizing: border-box;
    padding: 10px;
    font-size: 1.6rem;
    text-decoration: none;
}

/** サブサイト */
.tpl_site #container #mainimg #mainimg_box {
    background: #E5EFF0;
}
.tpl_site #container #mainimg #mainimg_box .site_name {
    padding: 50px;
}
.tpl_site #container #mainimg #mainimg_box .site_name.noimage {
    background: transparent;
    text-shadow: none;
}
@media screen and (max-width: 1080px) {
    .tpl_site #container #mainimg #mainimg_box .site_name:not(.noimage) {
        top: 50%;
        color: #000000;
        padding: 20px 20px;
        z-index: 1;
        position: relative;
        background: transparent;
    }
    .tpl_site #container #mainimg #mainimg_box .site_name:not(.noimage) + img {
        position: absolute;
        bottom: 0;
        right: 0;
        height: 100%;
        width: 100%;
        object-position: right bottom;
        object-fit: cover;
    }
}

.common_banner_link a {
    background: #E5F9F2;
    color: #333333;
    border-radius: 8px;
}

@media screen and (max-width: 750px) {
    html {
        scroll-padding-top: 60px;
    }
    #container #header {
        /*margin: 60px;*/
    }
    #container #pankuzu_wrap {
        padding: 20px 20px 2px;
        order: unset;
    }
    #container #pankuzu_wrap {
        padding: 20px 20px 2px;
        order: unset;
    }
    #container #footstep_wrap {
        display: block !important;
    }
    #container #mymainback_bg {
        padding: 0px;
    }
    #container #mymainback {
        padding-top: 32px;
    }
    #container #mymainback #main_body .toc_link_wrap {
        display: block;
    }
    #container #mymainback #main_body .toc_link_wrap .toc_link_toggle {
        width: 100%;
        height: auto;
        margin: 0px;
        padding: 10px;
        border: 1px solid #333;
        background: url(/img/sp/acc_open.png) no-repeat right 10px top 50% #eeeeee;
        background-size: 15px 15px;
        border-radius: 5px;
        text-align: center;
        box-sizing: border-box;
        list-style: none;
    }
    #container #mymainback #main_body .toc_link_wrap[open] .toc_link_toggle {
        background-image: url(/img/sp/acc_close.png);
    }
    #container #mymainback #main_body .toc_link_wrap ul.toc_link {
        margin: 0px;
        padding: 0px;
        list-style: none;
    }
    #container #mymainback #main_body .toc_link_wrap ul.toc_link li {
        display: block;
        margin: 0px;
        padding: 10px;
        border: none;
        border-bottom: 1px solid #ccc;
    }
    #container #mymainback #main_body .toc_link_wrap ul.toc_link li:last-child {
        border: none;
    }
    #container #mymainback #main_body .toc_link_wrap ul.toc_link li a {
        display: block;
        background: url(/img/sp/arrow_r.png) no-repeat right center;
        background-size: 8px auto;
        padding-right: 12px;
        text-decoration: none;
    }
    #container #mymainback #main_body .toc_link_wrap ul.toc_link li.toc_type_h2 {
        padding-left: 10px;
    }
    #container #mymainback #main_body .toc_link_wrap ul.toc_link li.toc_type_h3 {
        padding-left: 20px;
    }
    #container #mymainback #main_body .toc_link_wrap ul.toc_link li.toc_type_h4 {
        padding-left: 30px;
    }
    #container #mymainback #main_body .toc_link_wrap ul.toc_link li.toc_type_h5 {
        padding-left: 40px;
    }

    #container #mymainback #main_body #content_footer .calendar_button_wrap {
        justify-content: center;
        font-size: 1.2rem;
    }

    .site #container #mainimg #mainimg_box .site_name.noimage {
        margin: 30px 0;
    }

}