*  {
    font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif;
    box-sizing: border-box;
}
#header *,#footer *,#side * {
    box-sizing: border-box;
}

a {
    transition: .3s;
}
a:hover {
    opacity: .7;
}
p {
    padding: 0;
}
#header p,#footer p,#sidebar p {
    padding: 0;
}
#header img,#footer img,#sidebar img,#information img,#trivia img,#example img,#news_list img,#message img,#news img,#ranking img,#recommend img,#feature img,#category img {
    max-width: 100%;
}
.main_flex {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
}
.content_area {
    max-width: 900px;
    width: 75%;
}
.sidebar_area {
    max-width: 280px;
    width: 24%;
}
#header {
    padding: 182px 0 25px;
}
#header a:hover,#footer a:hover,#sidebar a:hover,#information a:hover,#trivia a:hover,#example a:hover,#news_list a:hover,#message a:hover {
    text-decoration: none;
}
.container {
    max-width: 1200px;
    width: 92%;
    margin: 0 auto;
}
#header .header_main_button_area {
    width: fit-content;
    flex: 0 1 fit-content;
}
#header .header_main_contact_area {
    width: fit-content;
    flex: 0 1 fit-content;
}
#header .header_main_button_area a {
    width: fit-content;
}
#header .header_first_line {
    background: #1a9ede;
    padding: 2px 0;
    width: 100%;
}
#header .header_first_line h1 {
    color: #fff;
    font-size: 12px;
}
#header .header_main_area {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    gap:10px;
}
#header .header_main_strengths {
    display: flex;
    justify-content: space-between;
    border-bottom:dashed 2px #406084;
    align-items: center;
    padding: 0 0 8px;
    flex-wrap: wrap;
}
#header .header_main_strengths img {
    margin: 0 5px 0 0;
}
#header .header_main_strengths li {
    display: flex;
    justify-content: left;
    align-items: center;
    font-weight: 600;
}
#header .header_main_strengths li p {
    font-size: 14px;
    color: #406084;
}

#header .header_main_links {
    display: flex;
    justify-content: space-between;
    padding: 8px 0 0;
    flex-wrap: wrap;
}
#header .header_main_links a {
    font-size: 14px;
    color: #406084;
    font-weight: 600;
    margin: 0 .8em 0;
    display: block;
}
#header .header_main_links li {
    text-align: center;
    min-width: fit-content;
}
#header .header_main_links li:not(:last-of-type) {
    border-right: solid 1px #406084;
}
#header .header_main_links li:last-of-type a {
    margin: 0 0 0 .8em;
}
#header .header_main_links li:first-of-type a {
    margin: 0 .8em 0 0;
}
#header .header_main_form_button {
    background: #f98a19;
    border-radius: 100px;
    text-align: center;
    padding: 2px 0;
    width: 100%;
    margin: 0 0 14px;
}
#header .header_main_form_button p {
    color: #fff;
    font-weight: 600;
    font-size: 17px;
     white-space: nowrap;
}
#header .header_main_pdf_button {
    background: #fff;
    border: solid 3px #1a9ede;
    border-radius: 100px;
    text-align: center;
    width: 100%;
}
#header .header_main_pdf_button p {
    color: #1a9ede;
    font-weight: 600;
    font-size: 17px;
    padding: 0 5px;
    white-space: nowrap;
}
#header .header_main_contact_time {
    font-size: 14px;
    color: #406084;
    line-height: 1.2;
}
#header .header_main_contact_annotation {
    font-size: 13px;
    color: #406084;
    line-height: 1.4;
}
#header .header_main_tel {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
#header .header_main_tel p {
    font-size: 30px;
    color: #1a9ede;
    font-weight: 600;
    line-height: 1.3;
    white-space: nowrap;
}
#header .header_nav_area {
    background: #1a9ede;
}
#header .header_nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#header .header_nav li {
    width: 16.66%;
    border-left: solid 2px #fff;
}
#header .header_nav li:last-of-type {
    border-right: solid 2px #fff;
}
#header .header_nav li a {
    width: 100%;
}
#header .header_nav li a {
    width: 100%;
}

.js-top_slider {
    opacity: 0;
    display: flex;
    transition: .2s;
}
.js-top_slider.slick-initialized {
    opacity: 1;
    display: block;
    min-height: auto;
}
.top_dots {
    display: flex;
    justify-content: center;
}

.top_dots li {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    margin: 17px 12px 0;
    background: #dddddd;
    cursor: pointer;
}

.top_dots li:hover,
.top_dots li.slick-active {
    background: #525252;
}
.top_dots li button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
}
.slick-slide {
  margin: 0 10px;
}
#header .header_nav_link {
    width: 100%;
    padding: 5px 0;
}
#header .header_nav_link p {
    color: #fff;
    text-align: center;
    font-weight: 600;
}
#header .header_categories {
    display: flex;
    justify-content: space-between;
}
#header .header_categories li {
    width: 25%;
    border-top: solid 3px #1483b9;
    border-bottom: solid 3px #1483b9;
    border-left: solid 3px #1483b9;
    text-align: center;
    position: relative;
}
#header .header_categories li:last-of-type {
    border-right: solid 3px #1483b9;
}
#header .header_categories p {
    color: #406084;
    font-weight: 600;
    font-size: 22px;
    text-decoration: underline #b0bac7;
    text-underline-offset: 4px;
}
#header .header_category {
    padding: 15px 0 10px;
    width: 100%;
    height: 100%;
}
#header .header_category img {
    margin: 0 0 10px;
}
.js-hide_menu {
    display: none;
}
.js-hide_menu.is-active_hide_menu {
    display: block;
}
.js-open_hide_menu {
    cursor: pointer;
    transition: .3s;
}
.js-open_hide_menu:hover {
    opacity: .7;
}

#footer .footer_main_area {
    background: #1a9ede;
    padding: 25px 0 25px;
}
#footer .footer_items {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}
#footer .footer_item {
    width: 31.7%;
    background: #fbfcfb;
    padding: 20px 0;
}
#footer .footer_links a {
    color: #406084;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}
#footer .footer_links li {
    margin: 0 0 10px;
}
#footer .footer_item_container {
    width: 90%;
    margin: 0 auto;
}
#footer .footer_item_title {
    color: #406084;
    font-weight: 600;
    font-size: 30px;
    text-align: center;
    line-height: 1.5;
}
#footer .footer_tel {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    font-size: 42px;
    color: #1a9ede;
    font-weight: 600;
    line-height: .8;
    margin: 5px 0 5px;
}
#footer .footer_tel img {
    margin: 0 5px 0 0;
}
#footer .footer_links {
    margin: 25px 0 0;
}
#footer .footer_time {
    font-size: 18px;
    color: #406084;
    line-height: 1.4;
}
#footer .footer_form_button {
    background: #f98a19;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    margin: 11px 0 10px;
    padding: 12px 0;
}
#footer .footer_form_button p {
    color: #fff;
    font-weight: 600;
    font-size: 20px;
}
.footer_button_inner {
    margin: 0 auto;
    width: 85%;
    display: flex;
    justify-content: flex-start;
    gap:20px;
    align-items: center;
}
#footer .footer_pdf_button {
    background: #fff;
    border: solid 3px #1a9ede;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    padding: 6px 0;
}
#footer .footer_pdf_button p {
    color: #1a9ede;
    font-weight: 600;
    font-size: 20px;
}
#footer .footer_item_title2 {
    color: #406084;
    font-weight: 600;
    font-size: 25px;
    text-align: center;
    line-height: 1.5;
        margin: 17px 0 0;
}
#footer .footer_nav {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 14px 0 20px;
}
#footer .footer_nav li {
    display: flex;
    justify-content: center;
    align-items: center;
    border-right: solid 2px #fff;
    padding: 0 3px;
}
#footer .footer_nav li:last-of-type {
    border-right: none;
}
#footer .footer_nav a {
    color: #fff;
    font-size: 15px;
    font-weight: 600;
}
#footer .footer_contact_info dt {
    font-size: 25px;
    color: #fff;
    font-weight: 600;
    line-height: 1.2;
}
#footer .footer_contact_info dd p,#footer .footer_contact_info dd a {
    font-size: 15px;
    color: #fff;
    font-weight: 500;
    line-height: 1.4;
}
#footer .footer_outer_link_title {
    text-align: center;
    font-size: 15px;
    color: #406084;
}
#footer .footer_outer_link_area {
    padding: 10px 0;
    border-bottom: solid 1px #87a3c3;
}
#footer .footer_outer_links {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin: 3px 0 0;
        gap: 0 10px;
}
#footer .footer_copyright_area {
    text-align: center;
    padding: 20px 0;
}
#footer .footer_copyright_area p {
    font-size: 12px;
    color: #406084;
    margin: 6px 0 0;
}
#sidebar .side_banner {
    margin: 0 0 23px;
    display: block;
}
#sidebar .side_title {
    border-bottom: solid 2px #406084;
    padding: 0 7px;
    margin: 0 0 10px;
}
#sidebar .side_title h2 {
    font-size: 25px;
    color: #406084;
    line-height: 1.3;
}
#sidebar .side_link_title {
    background: #1a9ede;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 9px 13px 9px 10px;
}
#sidebar .side_link_title h3 {
    color: #fff;
    font-size: 20px;
}
#sidebar .side_links li {
    border-bottom: dashed 1px #406084;
}
#sidebar .side_links li:last-of-type {
    border-bottom: none;
}
#sidebar .side_links li.last_side_link {
    border-bottom: dashed 1px #406084;
}
#sidebar .side_link {
    width: 100%;
    padding: 11px 0 9px 20px;
    font-size: 15px;
    letter-spacing: -.1em;
    box-sizing: border-box;
}
#sidebar .side_links a {
    width: 100%;
    color: #406084;
    font-size: 15px;
}
#sidebar .side_link_title_trivia {
    background: #44b76a;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 9px 13px 9px 10px;
    margin: 20px 0 10px;
}
#sidebar .side_link_title_trivia h3 {
    color: #fff;
    font-weight: 600;
    font-size: 20px;
}
#sidebar .side_trivias {
    margin: 0 0 27px;
}
#sidebar .side_trivias li {
    margin: 0 0 10px;
}
#sidebar .side_trivia {
    display: flex;
    justify-content: left;
    align-items: center;
    padding: 5px 7px;
    box-sizing: border-box;
    border:solid 2px #44b76a;
}
#sidebar .side_trivia p {
    color: #2b7343;
    font-size: 15px;
    line-height: 1.4;
    margin: 0 0 0 10px;
}

#sidebar .side_contact_area {
    border:solid 2px #1a9ede;
    margin: 0 0 30px;
}
#sidebar .side_contact_title {
    background: #1a9ede;
}
#sidebar .side_contact_title h2 {
    color: #fff;
    font-size: 25px;
    font-weight: 600;
    line-height: 1.4;
    text-align: center;
    padding: 6px 0;
}
#sidebar .side_contact_detail {
    width: 95%;
    margin: 0 auto;
    padding: 8px 0 10px;
}
#sidebar .side_contact_text1 {
    font-size: 16px;
    line-height: 1.4;
    color: #406084;
    margin: 0 0 3px;
    text-align: center;
}
#sidebar .side_contact_text2 {
    font-size: 14px;
    line-height: 1.4;
    color: #406084;
    margin: 0 0 12px;
    text-align: center;
}
#sidebar .side_contact_tel {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    font-size: 33px;
    color: #1a9ede;
    font-weight: 600;
    line-height: 1;
    margin: 5px 0 5px;
}
#sidebar .side_contact_tel img {
    margin: 0 2px 0 0;
}
#sidebar .side_form_button {
    background: #f98a19;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    margin: 0 0 5px;
    padding: 5px 0;
}
#sidebar .side_form_button_inner {
    margin: 0 auto;
        width: 90%;
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    align-items: center;
}
#sidebar .side_form_button p {
    color: #fff;
    font-weight: 600;
    font-size: 17px;
}
#sidebar .side_pdf_button p {
    color: #1a9ede;
    font-weight: 600;
    font-size: 17px;
}
#sidebar .side_pdf_button {
    background: #fff;
    border: solid 3px #1a9ede;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    padding: 3px 0;
}
#sidebar .side_pdf_button_inner {
    margin: 0 auto;
    width: 92%;
    display: flex;
    justify-content: flex-start;
    gap: 7px;
    align-items: center;
}
#sidebar .side_quo {
    margin: 20px 0 20px;
    display: block;
}
#hamburger_menu .side_banner {
    margin: 0 0 23px;
    display: block;
}
#hamburger_menu .side_title {
    border-bottom: solid 2px #406084;
    padding: 0 7px;
    margin: 0 0 10px;
}
#hamburger_menu .side_title h2 {
    font-size: 20px;
    color: #406084;
    line-height: 1.3;
}
#hamburger_menu .side_link_title {
    background: #1a9ede;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 9px 13px 9px 10px;
}
#hamburger_menu .side_link_title h3 {
    color: #fff;
    font-size: 18px;
}
#hamburger_menu .side_links {
    margin: 0 0 20px;
}
#hamburger_menu .side_links li {
    border-bottom: dashed 1px #406084;
}
#hamburger_menu .side_links li:last-of-type {
    border-bottom: none;
}
#hamburger_menu .side_links li.last_side_link {
    border-bottom: dashed 1px #406084;
}
#hamburger_menu .side_link {
    width: 100%;
    padding: 11px 0 9px 20px;
    font-size: 15px;
    letter-spacing: -.1em;
    box-sizing: border-box;
}
#hamburger_menu .side_links a {
    width: 100%;
    color: #406084;
    font-size: 15px;
}
#hamburger_menu .side_link_title_trivia {
    background: #44b76a;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 9px 13px 9px 10px;
    margin: 20px 0 10px;
}
#hamburger_menu .side_link_title_trivia h3 {
    color: #fff;
    font-weight: 600;
    font-size: 20px;
}
#hamburger_menu .side_trivias {
    margin: 0 0 27px;
}
#hamburger_menu .side_trivias li {
    margin: 0 0 10px;
}
#hamburger_menu .side_trivia {
    display: flex;
    justify-content: left;
    align-items: center;
    padding: 5px 7px;
    box-sizing: border-box;
    border:solid 2px #44b76a;
}
#hamburger_menu .side_trivia p {
    color: #2b7343;
    font-size: 15px;
    line-height: 1.4;
    margin: 0 0 0 10px;
}

#hamburger_menu .side_contact_area {
    border:solid 2px #1a9ede;
    margin: 0 0 30px;
}
#hamburger_menu .side_contact_title {
    background: #1a9ede;
}
#hamburger_menu .side_contact_title h2 {
    color: #fff;
    font-size: 25px;
    font-weight: 600;
    line-height: 1.4;
    text-align: center;
    padding: 6px 0;
}
#hamburger_menu .side_contact_detail {
    width: 95%;
    margin: 0 auto;
    padding: 8px 0 10px;
}
#hamburger_menu .side_contact_text1 {
    font-size: 16px;
    line-height: 1.4;
    color: #406084;
    margin: 0 0 3px;
    text-align: center;
}
#hamburger_menu .side_contact_text2 {
    font-size: 14px;
    line-height: 1.4;
    color: #406084;
    margin: 0 0 12px;
    text-align: center;
}
#hamburger_menu .side_contact_tel {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    font-size: 29px;
    color: #1a9ede;
    font-weight: 600;
    line-height: 1;
    margin: 5px 0 5px;
}
#hamburger_menu .side_contact_tel img {
    margin: 0 2px 0 0;
}
#hamburger_menu .side_form_button {
    background: #f98a19;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    margin: 0 0 5px;
    padding: 5px 0;
}
#hamburger_menu .side_form_button_inner {
    margin: 0 auto;
        width: 90%;
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    align-items: center;
}
#hamburger_menu .side_form_button p {
    color: #fff;
    font-weight: 600;
    font-size: 18px;
}
#hamburger_menu .side_pdf_button p {
    color: #1a9ede;
    font-weight: 600;
    font-size: 18px;
}
#hamburger_menu .side_pdf_button {
    background: #fff;
    border: solid 3px #1a9ede;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    padding: 3px 0;
}
#hamburger_menu .side_pdf_button_inner {
    margin: 0 auto;
    width: 92%;
    display: flex;
    justify-content: flex-start;
    gap: 7px;
    align-items: center;
}
#hamburger_menu .side_quo {
    margin: 20px 0 0;
    display: block;
}
#hamburger_menu .side_banner img,#hamburger_menu .side_quo img {
}
#hamburger_menu .side_banner,#hamburger_menu .side_quo {
    text-align: center;
}

.common_title {
    background: 
    linear-gradient(to right, #406084 6px, transparent 6px),
    repeating-linear-gradient(
        135deg,
        #80dbff,
        #80dbff 15px,
        #b6eeff 15px,
        #b6eeff 30px 
    );
    padding: 10px 20px;
}
.common_title_text {
    color: #406084;
    font-size: 30px;
    font-weight: 600;
    text-shadow:
    -3px -3px 0 #fff,
    -3px -2px 0 #fff,
    -3px -1px 0 #fff,
    -3px  0px 0 #fff,
    -3px  1px 0 #fff,
    -3px  2px 0 #fff,
    -3px  3px 0 #fff,
    
    -2px -3px 0 #fff,
    -2px  3px 0 #fff,
    
    -1px -3px 0 #fff,
    -1px  3px 0 #fff,

     0px -3px 0 #fff,
     0px  3px 0 #fff,

     1px -3px 0 #fff,
     1px  3px 0 #fff,

     2px -3px 0 #fff,
     2px  3px 0 #fff,

     3px -3px 0 #fff,
     3px -2px 0 #fff,
     3px -1px 0 #fff,
     3px  0px 0 #fff,
     3px  1px 0 #fff,
     3px  2px 0 #fff,
     3px  3px 0 #fff,

    -2px -2px 0 #fff,
    -1px -2px 0 #fff,
     0px -2px 0 #fff,
     1px -2px 0 #fff,
     2px -2px 0 #fff,

    -2px  2px 0 #fff,
    -1px  2px 0 #fff,
     0px  2px 0 #fff,
     1px  2px 0 #fff,
     2px  2px 0 #fff,

    -2px -1px 0 #fff,
    -1px -1px 0 #fff,
     0px -1px 0 #fff,
     1px -1px 0 #fff,
     2px -1px 0 #fff,

    -2px  1px 0 #fff,
    -1px  1px 0 #fff,
     0px  1px 0 #fff,
     1px  1px 0 #fff,
     2px  1px 0 #fff,

    -1px  0px 0 #fff,
     1px  0px 0 #fff;
    line-height: 1.5;
}
.common_information_items {
    display: flex;
    justify-content: space-between;
    margin: 25px 0;
}
.common_information_items li {
    width: 31%;
    border: solid 2px #406084;
    display: flex;
    flex-direction: column;
}
.common_information_items img {
    width: 100%;
    height: 130px;
    object-fit: cover;
}
.common_information_item_top {
    padding: 10px 3% 20px;
    width: 100%;
    border-bottom: dashed 2px #406084;
}
.common_information_item_top h3 {
    color: #406084;
    font-size: 20px;
    font-weight: 600;
    margin: 10px 0 0;
    line-height: 1.2;
}
.common_information_item_bottom {
    padding: 15px 3% 20px;
}
.common_information_item_bottom p {
    color: #406084;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.2;
}
.common_information_detail_button {
    margin: auto auto 15px;
    max-width: 94%;
}
.common_information_detail_button div {
    padding: 2px 5px;
    width: 150px;
    max-width: 100%;
    background: #1a9ede;
    border-radius: 100px;
    text-align: center;
}
.common_information_detail_button p {
    font-size: 15px;
    color: #fff;
    font-weight: 500;
}
.common_link_area {
    margin: 20px auto 0;
    display: flex;
    justify-content: right;
}
.common_link {
    background: #1a9ede;
    min-width: 30em;
    text-align: center;
    width: fit-content;
    padding: 5px 10px;
    border-radius: 100px;
}
.common_link p {
    color: #fff;
    font-size: 20px;
    font-weight: 500;
}
#information {
    padding: 40px 0 40px;
}
.common_example_item_top {
    background: #d9f7ff;
    border-bottom: solid 2px #406084;
    padding: 2px 3%;
}
.common_example_item_top h3,.common_example_item_top a {
    font-size: 14px;
    color: #406084;
    font-weight: 600;
    line-height: 1.2;
}
.common_example_item_bottom {
    padding: 15px 3% 25px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.common_example_item_bottom a {
    width: 47%;
}
.common_example_item_bottom p {
    width: 50%;
    font-size: 13px;
    color: #406084;
    font-weight: 500;
    line-height: 1.2;
}
.common_news_link_item {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap:15px;
        border-bottom: dashed 1px #406084;
    margin: 0 0 10px;
    padding: 0 0 5px;
}
.common_news_link_item:hover {
    border-bottom: dashed 1px #406084!important;
}
.common_news_link_item_time {
    font-size: 18px;
    color: #406084;
    line-height: 1.5;
}
.common_news_link_item_tag {
    font-size: 13px;
    color: #377251;
    border: #377251 solid 2px;
    border-radius: 100px;
    line-height: 1.5;
    padding: 1px 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 5.5em;
    font-weight: 500;
}
.common_news_link_item_detail {
    font-size: 20px;
    color: #406084;
    line-height: 1.5;
}
.common_news_link_items {
    margin: 17px 0 25px;
}
#news_list {
    padding: 60px 0 60px;
}
.common_trivia_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
    border: solid 1px #2b7343;

    margin: 25px 0 65px;
}
.common_trivia_list li {
    border: solid 1px #2b7343;

}
.common_trivia_link {
    display: flex;
    justify-content: left;
    align-items: center;
    gap:10px;
    padding: 8px 2% 8px 5%;
}
.common_trivia_link p {
    color: #2b7343;
    font-size: 17px;
    font-weight: 600;
}
#header .header_hide_menu {
    position: absolute;
    background: #fff;
    border: solid 13px #1a9ede;
    bottom: calc(100% + 4px);
    border-radius: 10px;
    right: 0;
    width: 200%;
    transition: .3s;
    z-index: 1;
}
#header .header_hide_menu_inner {
    position: relative;
    width: 100%;
    padding: 20px 2% 10px;
    display: flex;
    justify-content: space-around;
}
#header .header_categories li:has(.is-active_hide_menu)::after {
    position: absolute;
    bottom: calc(100% + 3px);
    left: calc(50% - 5px);
    content: "";
    display: block;
    width: 0;
    height: 0;
    margin: auto;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fff;
    z-index: 2;
}
#header .header_categories li:has(.is-active_hide_menu)::before {
    position: absolute;
    bottom: calc(100% + 3px);
    left: calc(50% - 1px);
    content: "";
    display: block;
    width: 0;
    height: 0;
    margin: auto;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #1483b9;
    z-index: 3;
}
#header .header_hide_menu_inner p {
    color: #406084;
    font-weight: 600;
    font-size: 16px;
    text-decoration: underline #b0bac7;
    text-underline-offset: 4px;
    margin: 10px 0 0;
    display: flex;
    justify-content: center;
    gap: 5px;
    align-items: center;
    padding: 0;
}
#header .close_hide_menu_button {
    position: absolute;
    right: 1px;
    top: 1px;
    border: none;
    background: #fff;
    cursor: pointer;
    padding: 0;
}
#footer .widgettitle {
    display: none;
}
#header .header_hide_menu_inner a {
    max-width: 47%;
}
.sp_full_container {
    max-width: 1200px;
    width: 90%;
    margin: 0 auto;
}
#biz_calendar {
    width: 100%!important;
}
.header_categories:has(.is-active_hide_menu) .overlay {
    display: none;
}
#header .close_hide_menu_button {
        width: fit-content;
        font-size: 1rem;
        padding: 0;
    }
.hamburger_menu {
    width: 33px;
    height: 33px;
    position: relative;
    cursor: pointer;
    background: #fff;
    border: none;
}
.hamburger_menu .bar {
  position: absolute;
  left: 50%;
  width: 26px;
  height: 4px;
background: #1483b9;
border-radius: 10px;
  transform: translateX(-50%) rotate(0);
  transition:
    top 0.3s cubic-bezier(.77,0,.18,1),
    transform 0.3s cubic-bezier(.77,0,.18,1),
    opacity 0.3s cubic-bezier(.77,0,.18,1);
}

.hamburger_menu .bar:nth-child(1) {
  top: 6px;
}
.hamburger_menu .bar:nth-child(2) {
  top: 15px;
}
.hamburger_menu .bar:nth-child(3) {
  top: 24px;
}
.js-hamburger_menu_button.is-fixed {
    position: fixed;
    right: 10px;
    top:10px;
    background: #fff;
    border: solid 1px #1483b9;
    z-index: 2;
}
.hamburger_menu.is-active_hide_menu .bar:nth-child(1) {
  top: 50%;
  transform: translateX(-50%) rotate(45deg);
}
.hamburger_menu.is-active_hide_menu .bar:nth-child(2) {
  opacity: 0;
}
.hamburger_menu.is-active_hide_menu .bar:nth-child(3) {
  top: 50%;
  transform: translateX(-50%) rotate(-45deg);
}
.menu_overlay .hamburger_menu {
    background: transparent;
}
.menu_overlay .hamburger_menu .bar {
    background: #fff;
}
.menu_overlay .hamburger_menu .bar:nth-child(1) {
  top: 50%;
  transform: translateX(-50%) rotate(45deg);
}
.menu_overlay .hamburger_menu .bar:nth-child(2) {
  opacity: 0;
}
.menu_overlay .hamburger_menu .bar:nth-child(3) {
  top: 50%;
  transform: translateX(-50%) rotate(-45deg);
}
.js-hamburger_menu {
    position: fixed;
    top: 0;
    left: -90vw;
    width: 90vw;
    height: 100vh;
    background: #fff;
    box-shadow: 2px 0 10px rgba(0,0,0,0.2);
    transition: left 0.3s ease;
    z-index: 1000;
    overflow-y: auto;
    padding: 10px 0 120px;
    max-width: 320px;
}
.menu_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0.4);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    z-index: 999;
    display: flex;
    justify-content: right;
    padding: 10px 0 0;
}
.js-hamburger_menu.is-active_hide_menu {
    left: 0;
}
.js-menu_overlay.is-active_hide_menu {
    opacity: 1;
    visibility: visible;
}
.hamburger_menu_inner {
  padding: 20px 0 0;
}
#footer #biz_calendar table.bizcal .calmonth {
    font-size: 23px;
    color: #406084;
}
#footer #biz_calendar table.bizcal tr:first-of-type {
    background: #d9f7ff;
}
#footer #biz_calendar table.bizcal tr:first-of-type td {
    background: #d9f7ff;
    border: none;
}
#footer #biz_calendar table.bizcal td {
    font-size: 18px;
    color: #406084;
    background-color: #fbfcfb;
     border: solid 2px #8198b2;
     padding: 0 2px;
}
#footer #biz_calendar table.bizcal .holiday {
    background-color: #ffbfd0;
    color: #406084;
}
#footer #biz_calendar p span.boxholiday {
    background-color: #ffbfd0;
    padding: 0 0 0 36px;
    margin: 0 5px 0 0;
}
#footer #biz_calendar table.bizcal {
    border: 3px #406084 solid;
}
#footer #biz_calendar table.bizcal th {
    background-color: #fbfcfb;
    border: solid 2px #8198b2;
}
#footer #biz_calendar {
max-width: 300px;
}
#header .header_main_right_area {
    display: flex;
    justify-content: right;
    gap: 2px 8px;
    flex-wrap: wrap;
    align-items: center;
}
#header .header_logo_area {
    min-width: fit-content;
    text-align: center;
    margin: 0 auto 0 0;
}
#header .header_main_left_area {
    display: flex;
    gap: 33px 8px;
    justify-content: left;
    flex-wrap: wrap;
    align-items: center;
}
.common_message {
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 0 10px;
}
.common_message p {
    color: #165168;
    font-size: 40px;
    text-align: center;
    font-weight: 600;
    line-height: .9;
}
.common_message span {
    color: #165168;
    font-size: 25px;
    font-weight: 600;
}
.common_message_before {
    margin-right: -10px;
}
.common_message_after {
    margin-left: -10px;
}
.common_message_links {
    display: flex;
    justify-content: center;
    gap: 2%;
    margin: 20px 0;
}
.common_message_links li {
    width: 48%;
    max-width: 420px;
}
.common_pdf_button p {
    color: #1a9ede;
    font-weight: 600;
    font-size: 25px;
    padding: 0;
}
.common_form_button p {
    color: #fff;
    font-weight: 600;
    font-size: 25px;
    padding: 0;
}
.common_form_button {
    background: #f98a19;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    padding: 12px 0;
}
.common_pdf_button {
    background: #fff;
    border: solid 3px #1a9ede;
    border-radius: 15px;
    text-align: center;
    width: 100%;
    padding: 6px 0;
}
.common_button_inner {
    margin: 0 auto;
    width: 85%;
    display: flex;
    justify-content: flex-start;
    gap: 20px;
    align-items: center;
}
.common_message_bottom {
    display: flex;
    justify-content: flex-start;
    gap: 10px;
        flex-wrap: wrap;
}
.common_message_bottom_left {
    display: flex;
    justify-content: left;
}
.common_message_bottom_left_text {
background: #1a9ede;
    padding: 10px 5px;
        display: flex;
    align-items: center;
}
.common_message_bottom_left_text p {
color: #fff;
font-size: 20px;
font-weight: 600;
line-height: 1.2;
    padding: 0;
    white-space: nowrap;
}
.common_message_bottom_right_bottom {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    flex-wrap: wrap;
}
.common_message_bottom_right_text {
    font-size: 20px;
    color: #406084;
    line-height: 1.4;
}
.common_message_bottom_tel {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    font-size: 55px;
    color: #1a9ede;
    font-weight: 600;
    line-height: .8;
    padding: 0;
}
.common_message_bottom_time {
    font-size: 17px;
    color: #406084;
    line-height: 1.4;
    padding: 0;
}
#message {
    padding: 0 0 25px;
}
.footer_sp_nav p {
    padding: 0;
}
.footer_sp_nav {
    position: fixed;
    z-index: 2;
    bottom: 0;
    left: 0;
    width: 100%;
}
.footer_sp_nav a:hover,.footer_sp_nav a:active {
    text-decoration: none;
    opacity: 1;
}
.footer_sp_nav ul {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
}
.footer_sp_nav li {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background: linear-gradient(to bottom, #5abaeb, #1a9ede);
    border-right: 2px solid #fff;
}
.footer_sp_nav li.footer_sp_nav_contact_area {
    background: linear-gradient(to bottom, #ffa04b, #ff6c01);
}
.footer_sp_nav li:last-of-type {
    border-right: none;
}
.footer_sp_nav li:nth-of-type(1) {
    width: 10%;
    border-right: 3px solid #fff;
    text-align: center;
}
.footer_sp_nav li:nth-of-type(2) {
    width: 51%;
}
.footer_sp_nav li:nth-of-type(3) {
    width: 33%;
}
.footer_sp_nav li:nth-of-type(4) {
    width: 6%;
    text-align: center;
}
.footer_sp_nav a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}
.footer_sp_nav_tel {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}
.footer_sp_nav_telno {
    font-size: 18px;
    color: #fff;
    font-weight: 600;
}
.footer_sp_nav_time {
    font-size: 11px;
    color: #fff;
    font-weight: 600;
}
.footer_sp_nav_contact {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    width: 100%;
}
.footer_sp_nav_contact p {
    width: fit-content;
    font-size: 11px;
    color: #fff;
    font-weight: 600;
}
.js-footer_sp_nav {
    display: none;
}
.to_top_button {
    position: fixed;
    z-index: 2;
    bottom: 20px;
    right: 20px;
    display: none;
}
#header .header_category_open_text {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .5em;
    padding: 0 .5em 0 0;
}
#header .header_category .header_category_open_text img {
    margin: 0;
    max-width: 1em;
}
#header .fixed_header {
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    background: #fff;
    width: 100%;
}
.sp {
    display: none;
}
.tablet {
    display: none;
}
@media screen and (max-width: 1315px) {

#header .header_main_form_button p {
    font-size: 15px;
}
#header .header_main_pdf_button p {
    font-size: 15px;
}
}
@media screen and (max-width: 1300px) {
#header .header_main_strengths li p {
    font-size: 13px;
}
#header .header_main_links a {
    font-size: 13px;
}
}
@media screen and (max-width: 1290px) {
#sidebar .side_form_button p {
    font-size: 15px;
}
#sidebar .side_pdf_button p {
    font-size: 15px;
}
#sidebar .side_contact_tel {
    font-size: 28px;
}
#header .header_main_strengths li p {
    font-size: 12px;
}
#header .header_main_links a {
    font-size: 12px;
}
}
@media screen and (max-width: 1230px) {
#header .header_main_tel p {
    font-size: 25px;
}
#header .header_main_contact_time {
    font-size: 12px;
}
#header .header_main_contact_annotation {
    font-size: 12px;
}
}
@media screen and (max-width: 1200px) {
#header .header_main_form_button p {
    font-size: 13px;
}
#header .header_main_pdf_button p {
    font-size: 13px;
}
#header {
    padding: 170px 0 25px;
}
#header .header_main_links a {
    font-size: 12px;
}
}
@media screen and (max-width: 1170px) {
    #header .header_main_form_button p {
    font-size: 12px;
}
#header .header_main_pdf_button p {
    font-size: 11px;
}
#header .header_main_strengths li p {
    font-size: 11px;
}

}
@media screen and (max-width: 1140px) {
/*#header .header_main_right_area {
    display: block;
}*/
    #header .header_main_form_button p {
    font-size: 11px;
}
#header .header_main_pdf_button p {
    font-size: 11px;
}
#header .header_main_strengths li p {
    font-size: 11px;
}
#header .header_main_links a {
    font-size: 11px;
}
#header .header_main_contact_time {
    font-size: 10px;
}
#header .header_main_contact_annotation {
    font-size: 10px;
}
#header .header_main_strengths img {
    margin: 0 1px 0 0;
}
#header .header_main_tel p {
    font-size: 21px;
}
}
@media screen and (max-width: 1070px) {
    #header {
    padding: 182px 0 25px;
}
#header .header_main_link_area {
    display: none;
}
    #header .header_main_form_button p {
        font-size: 17px;
    }
    #header .header_main_pdf_button p {
        font-size: 17px;
    }
    #header .header_main_tel p {
        font-size: 30px;
    }
    #header .header_main_contact_time {
        font-size: 14px;
    }
    #header .header_main_contact_annotation {
        font-size: 13px;
    }
}
@media screen and (max-width: 960px) {
    #header {
        padding: 130px 0 25px;
    }
    #header .header_logo_area {
        min-width: 66%;
        width: 66%;
        text-align: center;
        margin: 0 calc(17% - 33px) 0 17%;
    }
    #header .header_main_area {
        justify-content: center;
        position: relative;
        gap:0;
        width: 100%;
    }
    #header .header_main_left_area {
        width: 100%;
        justify-content: center;
    }


.tablet_none {
    display: none;
}
.tablet {
    display: block;
}
}
@media screen and (max-width: 767px) {
    #footer {
        padding: 0 0 90px;
    }
    #header .header_categories li:has(.is-active_hide_menu)::before {
        display: none;
    }
    #header .header_categories li:has(.is-active_hide_menu)::after {
        display: none;
    }
    .common_message_bottom_right_text {
        font-size: 16px;
        margin: 0 0 6px;
    }
    .common_message_bottom_tel {
        font-size: 36px;
        margin: 0 0 6px;
    }
    .common_message_bottom_tel img {
            max-width: 1.5em;
    }
    .common_message_links {
            display: block;
    }
    .common_message_links li {
            width: 100%;
    max-width: none;
    }
    .common_form_button p {
        font-size: 19px;
    }
    .common_pdf_button p {
        font-size: 19px;
    }
    .common_form_button {
    margin: 0 0 15px;
}
    .content_area {
        width: 100%;
    }
    #footer .footer_items {
        flex-wrap: wrap;
        gap: 0;
    }
    #footer .footer_item {
        width: 100%;
        margin: 0 0 20px;
    }
    .slick-slide {
        margin: 0;
    }
    .sp_full_container {
        width: 100%;
    }
    #header .header_categories p {
        font-size: 12px;
    }
    #header .header_categories li {
        border-top: solid 1px #1483b9;
        border-bottom: solid 1px #1483b9;
        border-left: solid 1px #1483b9;
    }
    #header .header_categories li:last-of-type {
        border-right: solid 1px #1483b9;
    }
    #header .header_category {
        padding: 15px 5% 0px;
    }
    #header .header_category img {
        max-width: 80%;
    }
    .slick-dotted.slick-slider {
        margin-bottom: 15px!important;
    }
    .common_title_text {
        font-size: 20px;
    }
    .common_title {
        padding: 5px 16px; 
    }
    .common_information_items {
        flex-wrap: wrap;
    }
    .common_information_items li {
        width: 100%;
        margin: 0 0 20px;
    }
    .common_information_detail_button p {
        padding: 0;
    }
    .common_information_item_bottom p {
        padding: 0;
    }
    .common_information_item_top h3 {
        font-size: 18px;
    }
    .common_link_area {
        justify-content: center;
    }
    .common_link_area a {
        width: 90%;
    }
    .common_link p {
        font-size: 16px;
        padding: 0;
    }
    .common_link {
        min-width: 100%;
    }
    .common_trivia_list {
        grid-template-columns: repeat(1, 1fr);
    }
    .common_trivia_link img {
        max-width: 50px;
    }
    .common_example_item_bottom p {
        font-size: 15px;
        padding: 0;
    }
    .common_trivia_link p {
        padding: 0;
    }
    .common_news_link_item {
        flex-wrap: wrap;
        gap: 5px 15px;
    }
    .common_news_link_item_detail {
        font-size: 16px;
        width: 100%;
        padding: 0;
    }
    .common_news_link_item_time {
        font-size: 16px;
    }
    #footer .footer_item_title {
        font-size: 20px;
    }
    #footer .footer_links {
        margin: 15px 0 0;
    }
    #footer .footer_links a {
        font-size: 15px;
    }
    #footer .footer_links li {
        margin: 0 0 5px;
    }
    #footer .footer_tel {
        font-size: 28px;
        margin: 10px auto 20px;
        width: fit-content;
        padding: 0;
    }
    #footer .footer_tel img {
        max-width: 1.5em;
    }
    #footer .footer_time {
        font-size: 15px;
        margin: 0 auto;
        width: fit-content;
    }
    #footer .footer_form_button p,#footer .footer_pdf_button p {
        font-size: 16px;
        padding: 0;
    }
    #footer .footer_item_title2 {
        font-size: 20px;
        margin: 25px 0 0;
    }
    #footer .footer_nav {
        flex-wrap: wrap;
    }
    #footer .footer_contact_info dd p, #footer .footer_contact_info dd a {
        padding: 0;
    }
    #footer .footer_contact_info dt {
        font-size: 20px;
    }
    #footer .footer_outer_links {
        flex-wrap: wrap;
        gap:10px 2%;
        margin: 10px 0 5px;
        justify-content: flex-start;
    }
    #footer .footer_outer_links li {
        width: 49%;
    }
    #footer .footer_outer_links img {
        width: 100%;
    }
    #footer .footer_outer_link_title {
        font-size: 17px;
    }
    #footer .footer_copyright_area img {
        max-width: 66%;
    }
    #pankuzuBox {
        width: 100%!important;
        box-sizing: border-box;
    }
    
    #header .header_hide_menu {
        position: fixed;
            width: 90%;
                z-index: 1004;
                bottom: 50%;
                    right: 5%;
    }
    #header .header_hide_menu_sp_title {
        font-size: 18px;
        color: #406084;
        font-weight: 600;
        margin: 6px 0 0;
    }
    #header .header_hide_menu_inner {
        padding: 6px 2% 10px;
    }
    html:has(.is-active_hide_menu) {
        overflow: hidden;
    }
    .header_categories:has(.is-active_hide_menu) .overlay {
        display: block;
        position: fixed;
        top: 0; left: 0;
        width: 100vw;
        height: 100vh;
        background: rgba(0,0,0,0.5);
        z-index: 1003;
    }
    .common_message p {
        font-size: 20px;
        padding: 0;
    }
    .common_message span {
        font-size: 15px;
    }
    .common_message_before {
        width: 3em;
    }
    .common_message_after {
        width: 3em;
    }
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
}