* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "fot-tsukuaoldmin-pr6n", Arial, sans-serif, sans-serif;
    font-weight: 300;
    font-style: normal;
}

h1 {
    all: unset;
    /* すべてのスタイルをリセット */
    display: contents;
    /* h1 のボックスモデルを無効化 */
}

ul {
    padding-left: 0;
}

li {
    list-style: none;
}

img {
    width: 100%;
}

a {
    text-decoration: none;
    color: #000000;
}


.topbannerSP {
    display: none;
}

.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2vw;
    background-color: #ffffff;
}

.logo_img {
    width: 350px;
}

.nav {
    display: flex;
    font-size: 23px;
}

.nav li {
    margin: -10px 70px 0 0;
}

.nav li:last-child {
    margin: -10px 0px 0 0;
}

.nav a{
    background-image: linear-gradient(#000, #000);
    background-repeat: no-repeat;
    background-position: bottom right; /* 下線の初期位置 */
    background-size: 0 1px; /* 下線のサイズ（横幅、高さ） */
    transition: background-size 0.3s;
}

.nav li a:hover {
    background-position: bottom left; /* 下線のホバー時位置 */
    background-size: 100% 1px; /* 下線の横幅を100%にする */
}

.hooter_nav {
    font-size: 1.9vw;
    margin-bottom: 0.6vw;
    color: #ffffff;
}

.hooter_nav li a{
    transition: .3s;
}

.hooter_nav li a:hover{
    color: #FBBE01;
}

.DB_nav {
    font-size: 1.3vw;
}

.left p {
    font-size: 1.4vw;
    margin-top: 1.2vw;
}

footer {
    display: flex;
    background-color: #233C82;
    padding: 2vw 12vw 3vw 10vw;
    color: #ffffff;
}

.rigth .yazirusi {
    width: 9%;
    margin: 0 1vw;
}

.rigth img {
    width: 4%;
    margin: 0 1vw;
}

.map_text {
    display: flex;
    font-size: 2.2vw;
    margin: 1.5vw 2vw 1.5vw 8vw;
    align-items: center;
}

.rigth .from p {
    line-height: 1.4;
}

footer .rigth p {
    display: block;
    font-size: 1.5vw;
    white-space: nowrap;
    color: #ffffff;
    transition: .3s;
}

footer .rigth .map_text p:hover{
    color: #FBBE01;
}

.rigth {
    margin-left: 0vw;
    flex: 0.9;
}

.left {
    flex: 1;
}

.left li {
    margin: -3px 0;
}

.left li a {
    color: #ffffff;
    white-space: nowrap;
}

.left img {
    width: 70%;
}

.left li ul {
    margin: 0.5vw 0 1vw 1.5vw;
}

.DB_nav_line {
    border-left: 1px solid #ccc;
}

/* 横幅を指定するための要素 */
.map-wrap {
    max-width: 100%;
    /* ここに横幅を指定 */
    margin-top: 1.5vw;
}

/* Google Mapを囲う要素 */
.map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 80%;
    /* 比率を4:3に固定 */
}

/* Google Mapのiframe */
.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.top_first {
    padding: 5vw 9vw 5vw 6vw;
    background-color: #CCD7E0;
}

.top_first_text {
    text-align: center;
    margin-bottom: 5vw;
}

.top_first h2 {
    font-weight: normal;
    font-size: 2.2vw;
}

.top_first h2 br {
    display: none;
}

.top_first p {
    font-weight: normal;
    font-size: 1.2vw;
    margin-top: -0.6vw;
}

.top_second {
    display: flex;
    align-items: center;
}

.yazirusi_blue {
    width: 4vw;
    max-width: 40px;
    margin: 0 0 0 1vw;
}

.top_second_block p {
    font-size: 1.5vw;
    padding: 0vw 0vw 0 2vw;
    margin: -2vw 4vw 0 0;
    line-height: 2.8vw;
}

.top_second_block a {
    display: inline-flex;
    align-items: center;
    gap: 0;
    background-color: #ffffff;
    padding: 1vw 13vw;
    font-size: 1.4vw;
    color: #233C82;
    border: 1px solid #233C82;
    margin: 0 2vw 0 0;
    transition: .3s;
}

.top_second_block a:hover{
    color: #ffffff;
    background-color: #233C82;
}

.top_second_position {
    text-align: center;
    margin-top: 2.1vw;
}

.top_second_block {
    flex: 1.8;
}

.second_img {
    width: 100%;
    flex: 1.6;
}

.third {
    color: #ffffff;
    font-size: 1.5vw;
    background-color: #233C82;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin-bottom: 5vw;
    transition: .3s;
}

.third img {
    width: 3.5vw;
    max-width: 40px;
    margin-top: 1.5vw;
}

.third a {
    line-height: 1.2vw;
    font-size: 2.5vw;
    color: #ffffff;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    line-height: 4vw;
    padding: 8vw 0 8vw 0;
    width: 33.33333%;
    /* 未対応ブラウザ用フォールバック */
    width: -webkit-calc(100% / 3);
    width: calc(100% / 3);
    background-color: #233C82;
    border-bottom: 1px solid #233C82;
    transition: .3s;
}

.third .third_left {
    border-right: 1px solid #ffffff;
}

.third .third_right {
    border-left: 1px solid #ffffff;
}

.third a:hover{
    color: #233C82;
    background-color: #ffffff;
}


.third .center {
    padding: 9.8vw 0 8vw 0;
}

.third .centerpurasu {
    margin-top: 3.7vw;
}



.button {
    display: inline-flex;
    align-items: center;
    gap: 0;
    background-color: #ffffff;
    padding: 0.8vw 10vw;
    font-size: 1.5vw;
    color: #233C82;
    border: 1px solid #233C82;
    transition: .3s;
}

.black {
    background-color: #000000;
    color: #ffffff;
    padding: 1.2vw 4vw;
    font-size: 1.3vw;
    letter-spacing: 0.1vw;
    transition: .3s;
    border: 1px solid #000000;
}

.black:hover{
    background-color: #ffffff;
    color: #000000;
}

.black br {
    display: none;
}

.margin_bottom {
    margin-bottom: 17.5vw;
}

.news {
    flex: 1.1;
    /* .news を伸縮可能に */
}

.news_topics {
    flex: 2.2;
    /* .news_topics を少し大きめに調整 */
    padding: 0 7vw 0 0;
}

.news_topics .tagu {
    display: inline-block;
    background-color: #233C82;
    color: #ffffff;
    padding: 0;
    margin: 0.5vw 1vw;
    min-width: 9.5vw;
    text-align: center;
    line-height: 1.4;
}

.news_topics ul {
    width: 100%;
    list-style: none;
    padding: 0;
    margin: 0;
}

.news_topics li {
    width: 100%;
    /* 幅を親要素いっぱいに */
    padding: 1.15vw 0;
    border-bottom: 1px solid #ccc;
    /* 横線を伸ばす */
}

.news_topics li:first-child {
    border-top: 1px solid #ccc;
}

.news_topics li p {
    font-size: 1.3vw;
    margin-left: 3vw;
    display: flex;
    color: #000;
}

.news_topics li p .infomation {
    font-size: 1.5vw;
    color: #000;
}

.flex {
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.forth_button {
    padding: 0.6vw 1vw;
}

.forth_button:hover{
    background-color: #233C82;
    color: #ffffff;
}

.news h2 {
    font-size: 2.3vw;
}

.news p {
    font-size: 1.4vw;
    margin-top: -1vw;
}

.news {
    text-align: center;
}

.forth {
    padding: 14.5vw 0 14.5vw 0;
}

.menu-toggle {
    display: none;
    flex-direction: column;
    cursor: pointer;
}

.menu-toggle span {
    background: #333;
    height: 2px;
    width: 45px;
    margin: 8.5px 0;
    transition: 0.3s;
}

.nav-container2 {
    display: none;
}

.SP {
    display: none;
}

.top_second_position .new {
    width: 4vw;
    max-width: 45px;
    margin: 0 0 0 2vw;
}

.infomation_top {
    display: flex;
    text-align: center;
    flex-direction: column;
}

.infomation_top h2 {
    margin-top: 3vw;
    font-size: 44px;
}

.infomation_top p {
    font-size: 25px;
    margin-top: -0.6vw;
    margin-bottom: 7.5vw;
}

/* .nav_button li button {
    font-size: 1.5vw;
    background-color: #233C82;
    color: #ffffff;
    padding: 0.7vw 2vw;
    min-width: 20vw;
    border-radius: 1vw 1vw 0 0;
    margin-bottom: 3.5vw;
    transition: .3s;
}

.nav_button li {
    margin: 0 1vw;
}

.infomation_html .news_topics {
    flex: 2.2;
    padding: 0 18.5vw 16vw 18.5vw;
}

.nav_button li:last-child {
    margin: 0 0;
}

.nav_button li:first-child {
    margin: 0 0;
}

.nav_button {
    display: flex;
    justify-content: center;
    transition: .3s;
}

.infomation_html {
}

.infomation_html li p {
    font-size: 1.2vw;
    margin-left: 15.3vw;
    display: block;
}

.infomation_html li .flex {
    display: flex;
    justify-content: flex-end;
    flex-direction: row-reverse;
}

.infomation_html .day {
    font-size: 1.35vw;
    color: #979797;
}

.infomation_html .tagu {
    margin: 0 1.2vw 0 0;
    padding: 0 0;
}

.infomation_html li p .infomation {
    font-size: 1.5vw;
    line-height: 2vw;
}

.infomation_html .news_topics li {
    width: 100%;
    padding: 1.25vw 0;
    border-bottom: 1px solid #000000;
}

.infomation_html .news_topics li:first-child {
    border-top: 1px solid #000000;
} */

/* 追加変更コード */

.tab-infomation {
    /* display: flex;
    flex-wrap: wrap;
    gap: 0 10px; */
    max-width: 1188px;
    margin: 0 auto 150px;
}

.tab-infomation > label {
    flex: 1 1;
    order: -1;
    opacity: 1;
    min-width: 70px;
    padding: 0.4em 1em;
    border-radius: 20px 20px 0 0;
    background-color: #ccc;
    color: #fff;
    font-size: 30px;
    text-align: center;
    cursor: pointer;
}

.tab-infomation > label:hover {
    opacity: .8;
}

.tab-infomation input {
    display: none;
}

.tab-infomation > article {
    display: none;
    width: 100%;
    padding: 50px 0;
    background-color: #fff;
}

.tab-infomation label:has(:checked) {
    background-color: #233C82;
    color: #fff;
}

.tab-infomation label:has(:checked) + article {
    display: block;
}
.infomation_list li:first-child{
    border-top: 1px solid #1A1A1A;
}
.infomation_list li{
    border-bottom: 1px solid #1A1A1A;
    padding: 30px;
    box-sizing: border-box;
}
.infomation_list li:hover{
    opacity: .5;
}
.infomation_list .infomation_date{
    display: flex;
    align-items: center;
}
.infomation_list .infomation_date .infomation_category{
    font-size: 25px;
    background-color:#233C82 ;
    color: #fff;
    display: inline-block;
    padding: 0 1em;
    margin-right: 1em;
}
.infomation_list .infomation_date .infomation_day{
    font-size: 25px;
    color: #999999;
}
.infomation_list .infomation_text{
    font-size: 28px;
}
.infomation_list .infomation_text p{
    line-height: 1.5em;
}

/* topics */
.infomation_html .tab-buttons {
    display: flex;
    justify-content: space-between;
    padding: 0;
    list-style: none;
    margin-bottom: 30px;
}

.infomation_html .tab-button {
    cursor: pointer;
    padding: 10px 15px;
    background: #ccc;
    border-radius: 5px;
    flex: 1;
    margin-right: 10px;
    border-radius: 20px 20px 0 0;
    font-size: 30px;
    text-align: center;
}
.infomation_html .tab-button:last-child{
    margin-right: 0;
}

.infomation_html .tab-button input {
    display: none;
}

.infomation_html .tab-content {
    display: none;
}

.infomation_html .tab-content.active {
    display: block;
}

.infomation_html .pagination {
    text-align: center;
    margin-top: 20px;
}
.wp-pagenavi {
    display: flex;
    justify-content: center;
    gap: 5px;
}

.wp-pagenavi a, .wp-pagenavi span {
    width: 40px;
    height: 40px;
    border-radius: 20px;
    background: #fff;
    border-color: #233C82!important;
    text-decoration: none;
    color: #233C82;
}

.wp-pagenavi .current {
    background: #233C82;
    color: #fff;
    border-color: #233C82!important;
}

 /* 追加変更コード　end */

 .page_top {
    display: flex;
    text-align: center;
    flex-direction: column;
}

.page_html{
    margin-bottom: 150px;
}
.page_top h2 {
    margin-top: 3vw;
    font-size: 44px;
}

.page_top p {
    font-size: 25px;
    margin-top: -0.6vw;
    margin-bottom: 7.5vw;
}
.page_content {
    max-width: 1188px;
    margin: 0 auto 100px;
    border-top: 1px solid #1A1A1A;
    border-bottom: 1px solid #1A1A1A;
    padding: 30px 0;
}
.page_content .page_date{
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}
.page_content .page_category{
    font-size: 25px;
    background-color: #233C82;
    color: #fff;
    display: inline-block;
    padding: 0 1em;
    margin-right: 1em;
}
.page_content .page_category a{
	color: #fff;
}
.page_content .page_day{
    font-size: 25px;
    color: #999999;
}
.page_content h3{
    font-size: 40px;
    border-bottom: 1px solid #1A1A1A;
    padding-bottom: 30px;
    margin-bottom: 30px;
}
.page_content p{
    font-size: 20px;
}
.page_content a{
    color: #233C82;
}
.page_content a:hover{
    color: #FBBE01;
}
.btn_back{
    text-align: center;
}
.btn_back a{
    font-size: 28px;
    text-align: center;
    color: #233C82;
}
.btn_back a span{
    display: inline-block;
    width: 40px;
    vertical-align: sub;
}
.btn_back a span.link_hover{
    display: none;
}
.btn_back a:hover span.link_hover{
    display: inline-block;
}
.btn_back a:hover span.link_unset{
    display: none;
}

.btn_back a:hover{
    color: #FBBE01;
}

.comingsoon_html{
    text-align: center; 
    margin: 50px auto 150px;
}
.comingsoon_html figcaption{
    width: 150px;
    margin: 0 auto 30px;
}
.comingsoon_html h2{
    font-size: 40px;
    margin-bottom: 30px;
}
.comingsoon_html p{
    font-size: 24px;
    line-height: 1.5em;
}
body {
    padding: 0;
    margin: 0;
    width: 100%;
    height: 100%;
}

.menu-open #wrapper{
    display: none;
}

#wrapper {
    display: table;
    width: 100%;
    /* height: 100%; */
    position: absolute;
    top: 40vw;
}

#wrapper-inner {
    display: table-cell;
    vertical-align: middle;
    width: 100%;
    height: 100%;
}

#scroll-down {
    display: block;
    position: relative;
    text-align: center;
}

.arrow-down {
    display: block;
    margin: 0 auto;
    width: 10px;
    height: 2.5vw;
}

.arrow-down:after {
    content: '';
    display: block;
    margin: 0;
    padding: 0;
    width: 0.5vw;
    height: 0.5vw;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    behavior: url(-ms-transform.htc);
    -moz-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}

#scroll-title {
    display: block;
    text-transform: uppercase;
    color: #ffffff;
    font-size: 2vw;
    letter-spacing: .1em;
}

#scroll-down::before {
    -webkit-animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
    /* Safari 4+ */

    -moz-animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
    /* Fx 5+ */

    -o-animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
    /* Opera 12+ */

    animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
    /* IE 10+, Fx 29+ */

    position: absolute;
    top: 4vw;
    left: 50%;
    margin-left: -0.1em;
    width: 2px;
    height: 6vw;
    background: #ffffff;
    content: ' ';
}

.text-overlay {
    position: absolute;
    top: 48%;
    left: 39.2%;
    color: white;
    font-size: 3vw;
    font-weight: bold;
    line-height: 4.1vw;
}

.image-container {
    position: relative;
}


.Message_title{
    padding: 2.4vw 21vw;
}

.Message h2{
    font-size: 6.8vw;
    color: #233C82;
}

.Message_title p{
    font-size: 1.85vw;
    margin-top: -3vw;
    margin-bottom: 3.2vw;
}

.Message_text {
    padding: 0 20vw;
    font-size: 1.5vw;
    line-height: 3vw;
    margin-bottom: 2vw;
}

.Message_text br{
    content: '';
    margin-bottom: 1.3em;
    display: block;
}

.Message_last{
    padding: 0 20vw;
    display: flex;
    justify-content: center;
    margin-bottom: 5vw;
    flex-direction: column;
    font-size: 1.2vw;
    align-items: flex-end;
}

.Message_name{
    margin-top: -1vw;
    font-size: 2vw;
    margin-bottom: 5vw;
}

.menu-open .image-container{
    display: none;
}

.third_bg{
    background-color: #CDD5DE ;
}

.ABOUT_main{
    margin: 0 auto;
    min-height: 100vh;
    text-align: center;
    background-color: #CCD7E0 !important; /* 下の背景色 */
    padding-bottom:210px;
}

.about_background .hero {
    background: url('img/about_top.png') no-repeat center top;
    background-size: 100% auto; /* 画像を画面幅いっぱいに */
    height: auto; /* 画像の高さを調整 */
    background-color: #CCD7E0;
    overflow: hidden;
}
.about_background .content {
    height: auto; /* 下の白背景を長めに */
}

.ABOUT{
    color: #ffffff;
    font-weight: bolder;
    font-size: 6.5vw;
    margin: 8vw 0 0 11vw;
    text-shadow: 0.1vw 0.2vw 0.3vw #808080;
    letter-spacing: 0.1vw;
    text-align: left;
}

.about_background h2{
    color: #ffffff;
    font-weight: bolder;
    font-size: 1.8vw;
    margin: -3vw 0 4.8vw 11.5vw;
    text-shadow: 0.1vw 0.2vw 0.3vw #808080;
    text-align: left;
}

.about_background .text{
    color: #000000;
    font-size: 26px;
    max-width: 1480px;
    line-height: 1.7em;
    letter-spacing: -0.4px;
    display: inline-block;
    text-align: left;

}

.about_background .margin{
    display: block;
    margin: 50px 0;
    content: "";
}


.about_background .text span{
    color: #233C82;
}

.page{
    max-width: 1530px;
    margin: 5vw auto 0;
}

.page .about_page{
    margin: 5vw auto;
}
.page p{
    max-width: 1480px;
    font-size: 26px;
    line-height: 1.7em;
    letter-spacing: -0.4px;
    display: inline-block;
    text-align: left;
    margin-bottom: 90px;
}
.about_box{
    padding: 2.7vw 2.5vw;
    background-color: #ffffff;
    border-radius: 1vw;
}
.about_background .about_box p{
    text-align: left;
    font-size: 44px;
    color: #233C82;
    display: block;
    letter-spacing: -0.4px;
    margin: 10px;
}

.about_background .about_box ul li{
    text-align: left;
    font-size: 29px;
    color: #000000;
    display: block;
    letter-spacing: -0.4px;
    margin-left: 15px;
	margin-bottom: 1em;
	line-height: 1.5em;
}

.about_background .about_box ul li span{
    text-align: left;
    font-size: 24px;
    color: #233C82;
}

.hero2 .ABOUT{
    color: #ffffff;
    font-weight: bolder;
    font-size: 6.5vw;
    margin: 6.5vw 0 0 10vw;
    text-shadow: 0.1vw 0.2vw 0.3vw #808080;
    letter-spacing: 0.1vw;
    text-align: left;
    display: block;
}

.about_background .hero2 h2 {
    color: #ffffff;
    font-weight: bolder;
    font-size: 1.8vw;
    margin: -3vw 0 0 10vw;
    text-shadow: 0.1vw 0.2vw 0.3vw #808080;
    text-align: left;
}

.about_background .about_box2{
    background-color: #ffffff;
    padding: 100px 100px;
    max-width: 1530px;
    margin: 180px auto 0;
    position: relative;
    margin-bottom: 90px;
}

.about_box2::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 20px;
    right: 20px;
    bottom: 10px;
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    pointer-events: none; /* クリックイベントを妨げない */
}

.about_background .about_box2 ul li{
    color: #000000;
    font-size: 26px;
    text-align: left;
    display: block;
    margin: 20px 0 1em 20px;
    line-height: 1.5em;
}

.about_background .about_box2 ul li .blue{
    color: #233C82;
    font-size: 40px;
    text-align: left;
    display: block;
    margin-top: 10px;
    margin-bottom: -10px;
	display: inline-block;
	font-weight: bold;
}
.about_background .about_box2 ul li .run{
	display: inline-block;
	line-height: 2em;
}

.about_box2 .margin_buttom{
    content: '';
    display: block;
    margin: 0 0 -15px 0;
}

.about_last{
    display: flex;
    max-width: 1530px;
    margin: 0 auto;
    height: 315px;
    align-items: stretch;
}

.about_last .about_last_img{
    flex: 1.1;
    width: 100%;
    height: auto;
    display: block;
}

.about_last .about_last_p{
    flex: 2;
    margin-left: 50px;
    font-size: 26px;
    text-align: left;
    margin-top: -15px;
	line-height: 1.7em;
}

.PC{
    display: block;
}

@-webkit-keyframes elasticus {
    0% {
        -webkit-transform-origin: 0% 0%;
        -ms-transform-origin: 0% 0%;
        -moz-transform-origin: 0% 0%;
        -o-transform-origin: 0% 0%;
        transform-origin: 0% 0%;
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        -moz-transform: scale(1, 0);
        -o-transform: scale(1, 0);
        transform: scale(1, 0);
    }

    50% {
        -webkit-transform-origin: 0% 0%;
        -ms-transform-origin: 0% 0%;
        -moz-transform-origin: 0% 0%;
        -o-transform-origin: 0% 0%;
        transform-origin: 0% 0%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    50.1% {
        -webkit-transform-origin: 0% 100%;
        -ms-transform-origin: 0% 100%;
        -moz-transform-origin: 0% 100%;
        -o-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    100% {
        -webkit-transform-origin: 0% 100%;
        -ms-transform-origin: 0% 100%;
        -moz-transform-origin: 0% 100%;
        -o-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        -moz-transform: scale(1, 0);
        -o-transform: scale(1, 0);
        transform: scale(1, 0);
    }
}

@-moz-keyframes elasticus {
    0% {
        -webkit-transform-origin: 0% 0%;
        -ms-transform-origin: 0% 0%;
        -moz-transform-origin: 0% 0%;
        -o-transform-origin: 0% 0%;
        transform-origin: 0% 0%;
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        -moz-transform: scale(1, 0);
        -o-transform: scale(1, 0);
        transform: scale(1, 0);
    }

    50% {
        -webkit-transform-origin: 0% 0%;
        -ms-transform-origin: 0% 0%;
        -moz-transform-origin: 0% 0%;
        -o-transform-origin: 0% 0%;
        transform-origin: 0% 0%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    50.1% {
        -webkit-transform-origin: 0% 100%;
        -ms-transform-origin: 0% 100%;
        -moz-transform-origin: 0% 100%;
        -o-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    100% {
        -webkit-transform-origin: 0% 100%;
        -ms-transform-origin: 0% 100%;
        -moz-transform-origin: 0% 100%;
        -o-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        -moz-transform: scale(1, 0);
        -o-transform: scale(1, 0);
        transform: scale(1, 0);
    }
}

@-o-keyframes elasticus {
    0% {
        -webkit-transform-origin: 0% 0%;
        -ms-transform-origin: 0% 0%;
        -moz-transform-origin: 0% 0%;
        -o-transform-origin: 0% 0%;
        transform-origin: 0% 0%;
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        -moz-transform: scale(1, 0);
        -o-transform: scale(1, 0);
        transform: scale(1, 0);
    }

    50% {
        -webkit-transform-origin: 0% 0%;
        -ms-transform-origin: 0% 0%;
        -moz-transform-origin: 0% 0%;
        -o-transform-origin: 0% 0%;
        transform-origin: 0% 0%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    50.1% {
        -webkit-transform-origin: 0% 100%;
        -ms-transform-origin: 0% 100%;
        -moz-transform-origin: 0% 100%;
        -o-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    100% {
        -webkit-transform-origin: 0% 100%;
        -ms-transform-origin: 0% 100%;
        -moz-transform-origin: 0% 100%;
        -o-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        -moz-transform: scale(1, 0);
        -o-transform: scale(1, 0);
        transform: scale(1, 0);
    }
}

@keyframes elasticus {
    0% {
        -webkit-transform-origin: 0% 0%;
        -ms-transform-origin: 0% 0%;
        -moz-transform-origin: 0% 0%;
        -o-transform-origin: 0% 0%;
        transform-origin: 0% 0%;
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        -moz-transform: scale(1, 0);
        -o-transform: scale(1, 0);
        transform: scale(1, 0);
    }

    50% {
        -webkit-transform-origin: 0% 0%;
        -ms-transform-origin: 0% 0%;
        -moz-transform-origin: 0% 0%;
        -o-transform-origin: 0% 0%;
        transform-origin: 0% 0%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    50.1% {
        -webkit-transform-origin: 0% 100%;
        -ms-transform-origin: 0% 100%;
        -moz-transform-origin: 0% 100%;
        -o-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
        -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
        -moz-transform: scale(1, 1);
        -o-transform: scale(1, 1);
        transform: scale(1, 1);
    }

    100% {
        -webkit-transform-origin: 0% 100%;
        -ms-transform-origin: 0% 100%;
        -moz-transform-origin: 0% 100%;
        -o-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
        -webkit-transform: scale(1, 0);
        -ms-transform: scale(1, 0);
        -moz-transform: scale(1, 0);
        -o-transform: scale(1, 0);
        transform: scale(1, 0);
    }
}



 /* codepen profile logo */
#paschka {
    display: block;
    color: white;
    font-family: helvetica neue, helvetica, arial;
    font-size: 32px;
    text-decoration: none;
    position: fixed;
    bottom: 0px;
    right: 0px;
    padding: 0px;
    transition: all .1s ease;
    background: #000;
    height: 40px;
    line-height: 30px;
    vertical-align: middle;
    width: 40px;
    text-align: center;
    border-radius: 5%;
    bottom: 20px;
    right: 20px;

    &:hover {
        /* background: #232323; */
        transition: all .1s ease;
        color: #f0f0f0;
    }


}

@media (max-width: 1530px) {
    .about_background  {
        margin: 0 auto;
        min-height: 100vh;
        text-align: center;
        max-width: 90%;
    }
    .about_background .hero {
            width: 100vw;
            margin-left: -5.5%; /* 95%の影響を打ち消すためにずらす */
    }

    .about_background .text {
        width: 90%;
    }

    .about_last .about_last_p {
        font-size: 21px;
    }

    .about_last .about_last_img {
        width: 40%;
    }

    .about_last {
        align-items: flex-start;
    }

    .hero2 .ABOUT {
        font-size: 9vw;
        margin: 6.5vw 0 0 0vw;
    }

    .about_background .hero2 h2 {
        font-size: 2.5vw;
        margin: -3vw 0 0 0vw;
    }

}

@media (max-width: 1400px) {
    .logo_img {
        width: 300px;
    }

    .nav li {
        margin: -10px 34px 0 0;
    }
}

@media (max-width: 1300px) {
    .logo_img {
        width: 280px;
    }

    .nav {
        font-size: 20px;
    }

    .Message_title {
        padding: 2.4vw 16vw;
    }

    .Message h2 {
        font-size: 7.5vw;
    }

    .Message_title p {
        font-size: 2.2vw;
        margin-top: -2vw;
        margin-bottom: 4.2vw;
    }

    .Message_text {
        padding: 0 15vw;
        font-size: 1.8vw;
        line-height: 4vw;
        margin-bottom: 3vw;
    }

    .Message_last {
        padding: 0 15vw;
        justify-content: center;
        margin-bottom: 6vw;
        flex-direction: column;
        font-size: 1.5vw;
        align-items: flex-end;
    }

    .Message_text br {
        content: '';
        margin-bottom: 2.3em;
        display: block;
    }

    .Message_name {
        margin-top: 0vw;
        font-size: 3vw;
        margin-bottom: 4vw;
    }
}

@media (max-width: 1200px) {
    .page_content{
        width: 90%;
    }
}

@media (max-width: 1000px) {

    .menu-open .menu-toggle {
        margin: 0 17px 0 0;
    }

    .menu-toggle {
        display: flex;
    }

    a {
        text-decoration: none;
        color: #ffffff;
    }

    .header .DB_nav_line {
        border-left: 1px solid #ccc;
        margin: 0 0 0 9vw;
    }


    /* nav ではなく .nav-container に対して適用 */
    .nav-container {
        display: none;
        position: absolute;
        top: 80px;
        left: 0;
        width: 100%;
        background: #233C82;
        padding: 10px 0;
    }

    .nav-container2 {
        position: absolute;
        top: 9.9vw;
        left: 0;
        width: 100%;
        background: #233C82;
        padding: 5vw 0;
        height: 100%;
        max-height: calc(100vh - 9.9vw);
        overflow-y: auto;
    }

    body.menu-open {
        overflow: hidden;
    }

    .nav-container2.active {
        display: flex;
    }

    .nav-container2 ul li a {
        font-size: 6vw;
        margin-left: 9vw;
    }

    .nav-container2 ul li ul li a {
        font-size: 4vw;
        margin-left: 5vw;
    }


    .nav {
        flex-direction: column;
        text-align: center;
    }

    .nav li {
        margin: 10px 0;
    }

    .menu-toggle.open span:nth-child(1) {
        transform: rotate(45deg) translate(13px, 13px);
    }

    .menu-toggle.open span:nth-child(2) {
        opacity: 0;
    }

    .menu-toggle.open span:nth-child(3) {
        transform: rotate(-45deg) translate(13px, -13px);
    }

    .logo_img {
        width: 30%;
    }

    .Message_title {
        padding: 2.4vw 13vw;
    }

    .Message h2 {
        font-size: 8.5vw;
    }

    .Message_title p {
        font-size: 2.6vw;
        margin-top: -4vw;
        margin-bottom: 5.2vw;
    }

    .Message_text {
        padding: 0 12vw;
        font-size: 2.8vw;
        line-height: 5vw;
        margin-bottom: 4vw;
    }

    .Message_last {
        padding: 0 12vw;
        justify-content: center;
        margin-bottom: 7vw;
        flex-direction: column;
        font-size: 2.5vw;
        align-items: flex-end;
    }

    .Message_text br {
        content: '';
        margin-bottom: 3.3em;
        display: block;
    }

    .Message_name {
        margin-top: 0vw;
        font-size: 4vw;
        margin-bottom: 5vw;
    }

    .tab-infomation{
        width: 90%;
        margin: 0 auto 15vw;
    }
    .tab-infomation > article{
        padding: 5vw 0;
    }
    .tab-infomation > label{
        width: 7vw;
        border-radius: 2vw 2vw 0 0;
        font-size: 3vw;
    }
    .infomation_list li{
        padding: 3vw;
    }
    .infomation_list .infomation_date .infomation_category{
        font-size: 2.5vw;
    }
    .infomation_list .infomation_date .infomation_day{
        font-size: 2.5vw;
    }
    .infomation_list .infomation_text{
        font-size: 2.8vw;
    }
    .infomation_list .infomation_text p{
        color: #000;
        font-size: 16px;
    }
    .infomation_html .tab-button{
        width: 7vw;
        border-radius: 2vw 2vw 0 0;
        font-size: 3vw;
    }
    .infomation_html .tab-button{
        margin-right: 1vw;
    }
	.infomation_html .tab-buttons{
		margin-bottom: 3vw;
	}
    .page_content .page_date p{
        font-size: 18px;
    }
    .page_content h3{
        font-size: 4vw;
    }
    .page_content p{
        font-size: 16px;
    }
    .page_content{
        margin-bottom: 10vw;
    }
    .page_html {
        margin-bottom: 15vw;
    }
	.about_background .about_box2{
		margin: 8vw auto;
		padding: 5vw 5vw;
	}
}

@media (max-width: 768px) {

    .topbannerSP {
        display: block;
    }

    .SP {
        display: block;
    }

    .topbanner {
        display: none;
    }

    .menu-toggle {
        display: flex;
    }


    /* nav ではなく .nav-container に対して適用 */
    .nav-container {
        display: none;
        position: absolute;
        top: 80px;
        left: 0;
        width: 100%;
        background: #233C82;
        padding: 10px 0;
    }

    .nav-container2 {
        position: absolute;
        top: 12vw;
        left: 0;
        width: 100%;
        background: #233C82;
        padding: 5vw 0;
        height: 100%;
        max-height: calc(100vh - 12vw);
        overflow-y: auto;
    }

    body.menu-open {
        overflow: hidden;
    }

    .nav-container2.active {
        display: flex;
    }

    .nav-container2 ul li a {
        font-size: 8vw;
        margin-left: 9vw;
    }

    .nav-container2 ul li ul li a {
        font-size: 5vw;
        margin-left: 5vw;
    }


    .nav {
        flex-direction: column;
        text-align: center;
    }

    .nav li {
        margin: 10px 0;
    }

    .menu-toggle.open span:nth-child(1) {
        transform: rotate(45deg) translate(13px, 13px);
    }

    .menu-toggle.open span:nth-child(2) {
        opacity: 0;
    }

    .menu-toggle.open span:nth-child(3) {
        transform: rotate(-45deg) translate(13px, -13px);
    }

    .logo_img {
        width: 48%;
    }

    .header {
        padding: 2vw 5vw 2vw 4vw;
    }

    a {
        text-decoration: none;
        color: #ffffff;
    }

    footer {
        display: flex;
        background-color: #233C82;
        padding: 2vw 8vw 7vw;
        color: #ffffff;
        flex-direction: column-reverse;
    }

    footer .rigth p {
        font-size: 5.8vw;
    }

    .rigth img {
        width: 6%;
        margin: 0 4vw 0 0;
    }

    .rigth .yazirusi {
        width: 17%;
        margin: 0 0 0 9vw;
    }

    .rigth .from p {
        font-size: 3.3vw;
        line-height: 1.6;
    }

    .rigth .from {
        margin: 3vw 0 15vw 0;
    }

    .left .hooter_nav {
        font-size: 8vw;
        margin-left: 3vw;
    }

    .left li {
        margin: -1.3vw 0;
    }

    .left ul li ul li a {
        margin-left: 5vw;
        font-size: 5.5vw;
    }

    .left .DB_nav li {
        margin: 1.3vw 0vw;
    }

    .left li ul {
        margin: -2vw 0 1vw 0.5vw;
    }

    .logo_hooter {
        display: none;
    }

    .left p {
        font-size: 3vw;
        text-align: center;
        margin-top: 8vw;
    }

    .rigth .logo_hooter2 {
        display: block;
        width: 65%;
        margin: 5vw 11vw 10vw;
    }

    .map_text {
        margin: 5vw 2vw 1.5vw 0vw;
        align-items: center;
    }

    .top_first {
        padding: 10vw 0 5vw 0;
        background-color: #CDD5DE;
    }

    .top_first h2 br {
        display: block;
    }

    .top_second {
        display: flex;
        align-items: center;
        flex-direction: column-reverse;
    }

    .second_img {
        width: 100%;
    }

    .top_first h2 {
        font-size: 5vw;
        line-height: 7vw;
        margin-bottom: 2vw;
    }

    .top_first_text {
        margin-bottom: 16vw;
    }

    .top_first p {
        font-weight: normal;
        font-size: 3vw;
    }

    .top_first .top_second_block p {
        font-size: 4.5vw;
        padding: 0 5vw 0 8vw;
        margin-bottom: 5vw;
        margin-top: 6vw;
        line-height: 9.2vw;
    }

    .top_second_block .button {
        display: inline-flex;
        align-items: center;
        gap: 0;
        background-color: #ffffff;
        padding: 5vw 7vw;
        font-size: 5.7vw;
        color: #233C82;
        border: 2px solid #233C82;
        text-wrap-mode: nowrap;
    }

    .yazirusi_blue {
        width: 14vw;
        max-width: 100px;
        margin: 0 0 0 18vw;
    }

    .third {
        color: #ffffff;
        font-size: 1.5vw;
        background-color: #233C82;
        display: flex;
        justify-content: space-around;
        align-items: flex-end;
        margin-bottom: 5vw;
        flex-direction: column;
        margin: 10vw 5vw 5vw 8vw;
    }

    .third_bg {
        background-color: #CDD5DE;
        padding: 5vw 0;
    }

    .third a {
        line-height: 1.2vw;
        font-size: 5vw;
        color: #ffffff;
        text-align: left;
        display: flex;
        flex-direction: column;
        line-height: 2;
        padding: 13vw 5vw 13vw 6vw;
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        letter-spacing: 0.5vw;
        background-color: #233C82;
    }

    .third .center {
        padding: 16vw 5vw 16vw 6vw;
    }

    .third .third_right {
        padding: 16vw 5vw 16vw 6vw;
    }

    .third img {
        width: 15vw;
        max-width: 100px;
        margin-top: 0;
    }

    .third .centerpurasu {
        margin-top: 0;
    }

    .third .third_right {
        border-left: 0;
        border-top: 1px solid #ffffff;
    }

    .third .third_right br {
        display: none;
    }

    .third .third_left {
        border-right: 0;
        border-bottom: 1px solid #ffffff;
    }

    .black br {
        display: block;
    }

    .black {
        text-align: left;
        font-size: 3.5vw;
        text-wrap-mode: nowrap;
        padding: 5vw 6vw;
        line-height: 1.5;
    }

    .black .yazirusi_blue {
        margin: 0 0 0 4vw;
    }

    .top_second_position {
        text-align: left;
        margin: 7.5vw 0 0vw 8vw;
    }

    .margin_bottom {
        margin-bottom: 30vw;
    }

    .flex {
        display: block;
        align-items: center;
    }

    .forth_button {
        display: none;
    }

    .news h2 {
        font-size: 6.5vw;
        margin: -3vw 0;
        font-weight: normal;
    }

    .news p {
        font-size: 3vw;
        margin-top: 2vw;
    }

    .news_topics li:not(:first-of-type) {
        display: none;
    }

    .news_topics li p {
        font-size: 3vw;
        margin-left: 3vw;
        display: block;
    }

    .news_topics li .flex {
        display: flex;
        justify-content: flex-end;
        flex-direction: row-reverse;
    }

    .news_topics .tagu {
        margin: 0 4vw 0 0;
        padding: 0 2.5vw;
    }

    .news_topics .day {
        font-size: 3.5vw;
        color: #979797;
    }

    .news_topics {
        flex: 2;
        padding: 0 7vw 0 7vw;
        margin-top: -2.5vw;
    }

    .news_topics li p .infomation {
        font-size: 3.5vw;
    }

    .news_topics li:first-child {
        border-top: 1px solid #000000;
    }

    .news_topics li {
        width: 100%;
        padding: 3vw 0;
        border-bottom: 1px solid #000000;
    }

    .forth_button_SP {
        padding: 6vw 6vw 6vw 6vw;
        font-size: 5.3vw;
    }

    .yazirusi_blueSP {
        width: 14vw;
        max-width: 100px;
        margin: 0 0 0 19vw;
    }

    .top_second_block a {
        display: inline-flex;
        align-items: center;
        gap: 0;
        background-color: #ffffff;
        padding: 6vw 6vw;
        font-size: 5.4vw;
        color: #233C82;
        border: 1px solid #233C82;
        margin: 0 2vw 0 0;
    }

    .top_second_position .new {
        width: 15vw;
        max-width: 100px;
        margin: 0 0 0 4vw;
    }

    HTML LessResult Skip Results Iframe EDIT ON html,
    body {
        padding: 0;
        margin: 0;
        width: 100%;
        height: 100%;
    }

    #wrapper {
        display: table;
        width: 100%;
        top: 95vw;
    }

    #scroll-title {
        display: block;
        text-transform: uppercase;
        color: #ffffff;
        font-size: 4vw;
        /* letter-spacing: .1em; */
    }

    #scroll-down::before {
        -webkit-animation: elasticus 1.2scubic-bezier(1, 0, 0, 1) infinite;
        -moz-animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
        -o-animation: elasticus 1.2s cubic-bezier(1, 0, 0, 1) infinite;
        animation: elasticus 1.2scubic-bezier(1, 0, 0, 1) infinite;
        position: absolute;
        top: 8vw;
        left: 50%;
        margin-left: -0.1em;
        width: 2px;
        height: 9vw;
        background: #ffffff;
        content: ' ';
    }

    .Message h2 {
        font-size: 11.5vw;
        margin-top: 7vw;
    }
    .Message_title p {
        font-size: 3.3vw;
        margin-top: -6vw;
        margin-bottom: 9vw;
    }
    .Message_text {
        padding: 0 9vw;
        font-size: 4vw;
        line-height: 8vw;
        margin-bottom: 4vw;
    }

    .Message_text br {
        content: '';
        margin-bottom: 8vw;
        display: block;
    }

    .Message_last {
        font-size: 3.5vw;
    }
    
    .Message_name {
        margin-top: 0vw;
        font-size: 5.5vw;
        margin-bottom: 5vw;
    }

    .text-overlay {
        position: relative;
        color: #233C82;
        top: 0%;
        left: 0%;
        font-size: 7vw;
        font-weight: 500;
        line-height: 10vw;
        margin: 6vw 0;
    }

    .image-container {
        flex-direction: column-reverse;
        display: flex;
        align-items: center;
    }

    .third a:hover{
        color: #233C82;
        background-color: #ffffff;
        border-bottom: 1px solid transparent;
    }

    .PC{
        display: none;
    }
    .about_background .hero {
        background: url(img/ABOUTSP.png) no-repeat center top;
        background-size: 100% auto;
        height: auto;
        background-color: #CCD7E0;
        overflow: hidden;
        width: 100vw;
        margin-left: -15%;
    }

    .ABOUT{
        font-size: 11vw;
        margin: 55vw 0 0 11vw;;
    }

    .about_background h2 {
        font-size: 3.2vw;
        margin: -6vw 0 12vw 12vw;
    }

    .about_background .text {
        font-size: 4vw;
        line-height: 1.7em;
        max-width: 80%;
        letter-spacing: 0;
        margin: -2vw 0 0 3vw;
    }

    .about_background .margin {
        margin: 9vw 0;
    }

    .ABOUT_main .about_background .page{
        width: 100vw; /* 画面いっぱいに広げる */
        height: auto; /* 縦横比を維持 */
        margin-left: -11.5vw;
    }

    .page .about_page {
        margin: 5vw auto 10vw;
    }

    .about_background {
        max-width: 80%;
    }

    .page p {
        font-size: 3.8vw;
        line-height: 1.7em;
        letter-spacing: 0;
        width: 79%;
        margin-bottom: 10vw;
    }

    .about_background .about_box p {
        text-align: center;
        font-size: 5vw;
    }

    .page_SP{
        width: 80%;
        margin: 0 auto;
    }

    .about_background .about_box p {
        text-align: center;
        font-size: 5vw;
        display: inline-block;
        margin: 0 0 3vw;
    }

    .about_background .about_box ul li span {
        font-size: 2.5vw;
    }

    .about_background .about_box ul li {
        font-size: 3.5vw;
        margin: 0 auto 5.5vw;
        line-height: 1.5em;
    }

    .about_box {
        padding: 6vw 7vw;
    }

    .hero2 .ABOUT {
        font-size: 11vw;
        margin: 6vw 0 0 0vw;
    }

    .about_background .hero2 h2 {
        font-size: 3.5vw;
        margin: -5vw 0 0 0vw;
    }

    .about_background .about_box2 {
        margin: 13vw auto 12vw;
        padding: 4vw 3vw;
    }
    .about_box2::before {
        display: none;
    }
    .about_background .about_box2 ul li .blue {
        font-size: 4vw;
        margin: 0 auto 2vw;
    }

    .about_background .about_box2 ul li {
        font-size: 3.5vw;
        margin: 2vw 0 1em 2vw;
        line-height: 1.5em;
    }

    .about_box2 .margin_buttom {
        margin: 0 auto;
    }

    .about_last {
        display: block;
        height: auto;
    }

    .about_last .about_last_img {
        width: 100%;
    }

    .about_last .about_last_p {
        font-size: 4vw;
        margin: 4vw auto;
        line-height: 1.7em;
    }

    .ABOUT_main {
        padding-bottom: 7vw;
    }
    .tab-infomation{
        width: 95%;
    }
    .infomation_top{
        display: none;
    }
    .tab-infomation{
        margin-top: 3vw;
    }
    .page_top{
        display: none;
    }
    .page_content{
        margin-top: 3vw;
    }
    .btn_back a{
        font-size: 18px;
    }
    .btn_back a span{
        width: 25px;
    }    
}

@media (max-width: 570px) {

    .nav-container2 {
        top: 14vw;
        height: 100%;
    }

    #wrapper {
        top: 92vw;
    }

    .tab-infomation > label{
        font-size: 3.2vw;
    }
    .infomation_list .infomation_date .infomation_category{
        font-size: 14px;
    }
    .infomation_list .infomation_date .infomation_day{
        font-size: 16px;
    }
    .infomation_list li a{
        display: flex;
    }
    .infomation_list .infomation_date{
        display: block;
    }
    .infomation_list .infomation_date .infomation_category{
        padding: 0 0.5em;
        margin-right: 0.5em;
    }
    .infomation_list .infomation_text{
        width: 74%;
    }
    .infomation_list .infomation_date{
        width: 26%;
    }
    .page_content .page_date p{
        font-size: 14px;
        line-height: 1.5em;
    }
    .page_content h3{
        font-size: 18px;
        line-height: 1.5em;
    }
}

@media (max-width: 460px) {

    .nav-container2 {
        top: 16vw;
    }

    .logo_img {
        width: 60%;
    }
    .infomation_list .infomation_text{
        width: 68%;
    }
    .infomation_list .infomation_date{
        width: 32%;
    }

}

@media (max-width: 375px) {

    .nav-container2 {
        top: 19vw;
    }
    .Message h2 {
        font-size: 11.5vw;
        margin-top: 7vw;
    }
    .Message_title p {
        font-size: 3.3vw;
        margin-top: -6vw;
        margin-bottom: 9vw;
    }
    .Message_text {
        padding: 0 9vw;
        font-size: 4vw;
        line-height: 8vw;
        margin-bottom: 4vw;
    }

    .Message_text br {
        content: '';
        margin-bottom: 8vw;
        display: block;
    }

    .Message_last {
        font-size: 3.5vw;
    }

    .Message_name {
        margin-top: 0vw;
        font-size: 5.5vw;
        margin-bottom: 5vw;
    }

}

/* クラシックエディタ用CSS */

/* h4, h5*/
.page_content h4{
    font-size: 24px;
    font-weight: bold;
    color: #333;
    border-left: 5px solid #0073aa;
    padding-left: 10px;
    margin-bottom: 15px;
}
.page_content h5{
    font-size: 20px;
    font-weight: bold;
    color: #444;
    border-left: 3px solid #0073aa;
    padding-left: 8px;
}

/* 箇条書きリスト（ul） */
.page_content ul {
    list-style-type: disc; /* ●（黒丸） */
    margin-left: 20px;
    padding-left: 15px;
}

.page_content ul li {
    margin-bottom: 5px;
	list-style: disc;
}

/* 番号付きリスト（ol） */
.page_content ol {
    list-style-type: decimal; /* 1, 2, 3... */
    margin-left: 20px;
    padding-left: 15px;
}

.page_content ol li {
    margin-bottom: 5px;
	list-style: auto;
}

/* カスタムデザイン（アイコンをつける） */
.page_content ul.custom-list {
    list-style: none;
    padding: 0;
}

.page_content ul.custom-list li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 5px;
}

.page_content ul.custom-list li::before {
    content: "✔"; /* チェックマーク */
    position: absolute;
    left: 0;
    color: #0073aa;
    font-weight: bold;
}

/* テーブル全体 */
.page_content table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

/* セルのスタイル */
.page_content th, td {
    border: 1px solid #ddd;
    padding: 10px;
    text-align: left;
}

/* ヘッダーのデザイン */
.page_content th {
    background-color: #0073aa;
    color: white;
    font-weight: bold;
}

/* 共通ボタンスタイル */
.page_content .btn {
    display: inline-block;
    padding: 10px 20px;
    background-color: #0073aa;
    color: white;
    text-decoration: none;
    border-radius: 5px;
    font-size: 16px;
    transition: 0.3s;
}

.page_content .btn:hover {
    background-color: #005580;
}

.page_content blockquote {
    border-left: 5px solid #0073aa;
    padding: 10px 15px;
    background: #f9f9f9;
    font-style: italic;
	font-size: 16px;
    color: #555;
    margin: 20px 0;
}
