@charset "UTF-8";
/* CSS Document */

img { -ms-interpolation-mode: bicubic; }

.sp{
display: none;
}

.hamburger-menu{
display: none;
}

  @keyframes fadeIn {
    0% {
      opacity: 0
    }

    100% {
      opacity: 1
    }
  }

  @-webkit-keyframes fadeIn {
    0% {
      opacity: 0
    }

    100% {
      opacity: 1
    }
  }

/*ハンバーガーメニュー*/

.hamburger-menu{
display: block;
}

.menu-btn {
    position: fixed;
    top: 0;
    right: 0px;
    display: flex;
    height: 70px;
	padding-bottom: 10px;
    width: 80px;
    justify-content: center;
    align-items: center;
    z-index: 9999999;
    background-color: #445cab;
	cursor: pointer;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 4px;
    width: 35px;
    border-radius: 3px;
    background-color: #ffffff;
    position: absolute;
    transition: all 0.5s;/*アニメーション設定*/
}
.menu-btn span:before {
    bottom: 11px;
}
.menu-btn span:after {
    top: 11px;
}

.menu-btn b{
color: #fff;
margin-top: 48px;
font-size: 1.1rem;
}

#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
    transition: all 0.5s;/*アニメーション設定*/
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
    transition: all 0.5s;/*アニメーション設定*/
}

#menu-btn-check {
    display: none;
}

.logo{
width: 70%;
padding: 5% 0 2% 5%;
}

.menu-content {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 999999;
    background-color: #445cab;
	overflow-y: scroll;
}
/*
.menu-content ul {
width: 90%;
padding: 0 5%;
margin-top: 80px;
}
.menu-content ul li {
    border-bottom: solid 1px #ffffff;
    list-style: none;
margin-bottom: 2%;
}
.menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 1.8rem;;
    box-sizing: border-box;
    color:#ffffff;
    text-decoration: none;
    padding: 13px 15px 14px 0;
    position: relative;
}
.menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #ffffff;
    border-right: solid 2px #ffffff;
    transform: rotate(45deg);
    position: absolute;
    right: 11px;
    top: 27px;
}
*/

.menu-content {
    width: 100%;
	margin-left: 0%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%;/*leftの値を変更してメニューを画面外へ*/
    z-index: 999999;
    background-color: #445cab;
    transition: all 1s;/*アニメーション設定*/
}

#menu-btn-check:checked ~ .menu-content {
    left: 0;/*メニューを画面内へ*/
    transition: all 0.5s;/*アニメーション設定*/
}
/*ハンバーガーメニューここまで*/


header{
position: fixed;
top: 0;
left: 0;
width: 100%;
border-bottom: rgba(81,114,190,1.00) 6px solid;
background: #fff;
z-index: 999;
}


.h_navi{
display: flex;
flex-wrap: wrap;
align-items: center;
padding: 8.5px;
margin-left: 1%;
position: relative;
z-index: 99;
}

.h_navi li{
margin-right: 4%;
}

.h_navi li h1{
width: 200px;
}

.h_navi li a{
font-size: 1.8rem;
color: #445cab;
}

.h_navi_02{
background: url("../img/top/h_ba_01.png") no-repeat right -40px center;
background-size: 100% 100%;
position: absolute;
top: 0;
right: 0;
width: 400px;
padding-right: 80px;
z-index: 99;
}

.h_navi_02{
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: flex-end;
}

.h_navi_02 li{
text-align: center;
width: 80px;
}

.h_navi_02 li:last-child{
border-left: #fff 1px solid;
border-right: #fff 1px solid;
margin: 13px 0;
padding: 0 10px;
}

.h_navi_02 li a{
color: #fff;
font-size: 1.1rem;
display: block;
}

.h_navi_02 li a i{
font-size: 3.5rem;
margin-bottom: 2%;
}

.top_main_section{
background: rgba(81,114,190,1.00);
border-bottom: rgba(74,92,166,1.00) 5px solid;
padding-top: 80px;
}

.top_main_img_section{
width: 1240px;
margin: 0 auto;
}

.swiper-slide{
background: rgba(81,114,190,1.00);
}

.top_main_section_01{
background: #fffdd9;
}

.top_btn_01{
width: 1084px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-top: -50px;
position: relative;
z-index: 99;
}

.top_btn_01 li{
width: 47%;
}

.top_btn_01 li a{
display: block;
width: 100%;
background: rgba(252,241,80,1.00);
text-align: center;
font-size: 3.0rem;
color: #445cab;
border: #445cab 5px solid;
border-radius: 10px;
padding: 4% 0;
position: relative;
}

.top_btn_01 li a:hover{
opacity: 1;
background: #ffdb00;
}

.top_btn_01 li a i{
position: absolute;
    top: 50%;
	right: 3%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.top_btn_02{
width: 90%;
margin: 0 auto;
padding: 5%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 5%;
}

.top_btn_02 li{
width: 23%;
position: relative;
}

.top_btn_02 li div:hover{
opacity: 0.7;
}

.top_btn_02_in01{
background: #fff;
text-align: center;
position: relative;
padding: 5% 0;
border: #c7d4ed 5px solid;
border-radius: 20px;
}

.top_btn_02_in01 img{
height: 153px;
width: auto;
margin-bottom: 4%;
}

.top_btn_02_in01 p{
font-size: 2.5rem;
line-height: 130%;
}


.top_btn_02_in01 i{
color: #a1b8e1;
font-size: 2.0rem;
position: absolute;
bottom: 4%;
right: 4%;
}

.top_btn_02_in01 a{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: block;
}

.top_btn_02_in02{
background: #fff;
text-align: center;
position: relative;
padding: 12% 0;
border: #c7d4ed 5px solid;
border-radius: 20px;
width: 100%;
}

.top_btn_02_in02:first-of-type{
position: absolute;
top: 0;
right: 0;
}

.top_btn_02_in02:last-of-type{
position: absolute;
bottom: 0;
right: 0;
}

.top_btn_02_in02 p{
font-size: 3.0rem;
line-height: 130%;
}

.top_btn_02_in02 i{
color: #a1b8e1;
font-size: 2.0rem;
position: absolute;
bottom: 8%;
right: 4%;
}

.top_btn_02_in02 a{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: block;
}

.top_midashi_01{
font-size: 5.6rem;
margin-bottom: 3%;
}

.top_midashi_01 b{
color: #4472c4;
}

.center{
text-align: center;
}

.basic_post_section {
    margin-bottom: 5rem;
}
.basic_post_section .basic_post_inner {
position: relative;
-webkit-box-sizing: content-box;
box-sizing: content-box;
max-width: 1240px;
margin: 0 auto;
}
.basic_post_section .swiper-container2 {
overflow: hidden;
}
.basic_post li{
background: #fff;
position: relative;
padding: 2%;
min-height: 384px;
border: #c7d4ed 5px solid;
border-radius: 20px;
box-sizing: border-box;
}

.basic_post li:hover{
opacity: 0.7;
}

.basic_post li img{
margin-bottom: 2%;
}

.basic_post li p{
font-size: 2rem;
}

.basic_post li a{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.basic_post_section .swiper-pagination {
bottom: -20px;
left: 50%;
transform: translateX(-50%);
}
.basic_post_section .swiper-button-prev, .basic_post_section .swiper-button-next {
display: grid;
place-content: center;
width: 6.4rem;
height: 6.4rem;
cursor: pointer;
-webkit-transition: var(--transition);
transition: var(--transition);
background-image: none;
background-color: #4472c4;
border-radius: 50%;
}
.basic_post_section .swiper-button-prev::before, .basic_post_section .swiper-button-next::before {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
content: "";
border-radius: 50%;
-webkit-box-shadow: var(--box-shadow);
        box-shadow: var(--box-shadow);
}
.basic_post_section .swiper-button-prev::after, .basic_post_section .swiper-button-next::after {
width: 1.2rem;
height: 1.2rem;
content: "";
border: solid #FFF;
border-width: 3px 3px 0 0;
}
.basic_post_section .swiper-button-prev::after {
margin-left: 0.4rem;
-webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
}
.basic_post_section .swiper-button-next::after {
margin-right: 0.4rem;
-webkit-transform: rotate(45deg);
        transform: rotate(45deg);
}
.basic_post_section .swiper-button-disabled {
pointer-events: none;
opacity: 0;
}
.basic_post_section .swiper-pagination-bullet + .swiper-pagination-bullet {
  margin-left: 10px;
}
.archive_link_01{
width: 1240px;
margin: 0 auto;
text-align: right;
padding-bottom: 5%;
}

.archive_link_01 a{
font-size: 2.2rem;
}

.archive_link_01 a i{
color: #e60012;
}

.top_news_section{
width: 1240px;
margin: 0 auto;
}

.top_news_section h2{
font-size: 3.1rem;
margin-bottom: 1%;
}

.top_news_section dl{
background: #fff;
padding: 3%;
border: #c7d4ed 5px solid;
border-radius: 20px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
font-size: 2.0rem;
margin-bottom: 1.5%;
}

.top_news_section dl dt{
width: 15%;
border-bottom: #4472c4 1px dotted;
padding-bottom: 3%;
margin-bottom: 3%;
}

.top_news_section dl dd{
width: 85%;
border-bottom: #4472c4 1px dotted;
padding-bottom: 3%;
margin-bottom: 3%;
}

.top_news_section dl dt:last-of-type{
border-bottom: none;
padding-bottom: 0;
margin-bottom: 0;
}

.top_news_section dl dd:last-of-type{
border-bottom: none;
padding-bottom: 0;
margin-bottom: 0;
}

.top_main_section_02{
width: 1240px;
margin: 0 auto;
padding: 2% 0;
background: url("../img/top/ba_01.jpg") no-repeat right bottom;
background-size: 40%;
}

.top_midashi_02{
margin-bottom: 1%;
display: inline-block;
  color: #fff100;
  font-size: 6.4rem;
  text-shadow: 
       3px  3px 5px #445cab,
      -3px  3px 5px #445cab,
       3px -3px 5px #445cab,
      -3px -3px 5px #445cab,
       3px  0px 5px #445cab,
       0px  3px 5px #445cab,
      -3px  0px 5px #445cab,
       0px -3px 5px #445cab;        /* 文字の影 */
}

.midashi_sub_01{
color: #445cab;
font-size: 2.6rem;
font-weight: bold;
}

.top_honbun_01{
font-size: 2.0rem;
}

.link_btn_01{
display: inline-block;
background: rgba(252,241,80,1.00);
text-align: center;
font-size: 2.0rem;
color: #445cab;
border: #445cab 2px solid;
border-radius: 10px;
padding: 10px 35px;
position: relative;
margin-top: 2%;
}

.link_btn_01:hover{
opacity: 1;
background: #ffdb00;
}

.link_btn_01 i{
position: absolute;
    top: 50%;
	right: 3%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.ba_01{
background: #e3eaf6;
}

.top_main_section_03{
width: 1240px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
padding: 5% 0;
}

.top_main_section_03 div:first-of-type{
width: 55%;
}

.top_main_section_03 div iframe{
width: 100%;
height: 380px;
}

.top_main_section_03 div:last-of-type{
width: 40%;
}

.f_section_01{
background: #4472c4;
padding: 4% 0 2% 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}

.footer_navidial{
    background-color: #4472c4;
    text-align: center;
}
.footer_navidial img{max-width: 50%; text-align: center; margin-bottom: 2%;}

.f_section_01 div{
margin: 0 1%;
}

.f_section_01 img{
width: 269px;
}

.f_link_01{
font-size: 1.8rem;
color: #fff;
text-align: center;
border: #fff 1px solid;
padding: 3% 0;
display: inline-block;
width: 200px;
border-radius: 15px;
}

.f_link_02{
font-size: 5.8rem;
color: #fff;
}

.f_honbun_01{
background: #445cab;
font-size: 1.8rem;
text-align: center;
color: #fff;
padding: 1% 0;
}

.copyright{
color: #4472c4;
text-align: center;
font-size: 1.6rem;
padding: 0.5% 0;
}





.navi_main_section{
padding: 5% 5% 0% 5%;
margin: 5% 8% 0 8%;
background: #fff;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
border-radius: 20px;
font-family: Hiragino Kaku Gothic W7 JIS2004;
}

.navi_main_section div{
width: 31%;
margin-bottom: 3%;
padding-bottom: 3%;
}

.acd-check{
    display: none;
}

.acd-label{
font-size: 2.5rem;
border-bottom: #c7d4ed 3px solid;
display: block;
margin-bottom: 2%;
padding-bottom: 2%;
}

.acd-content{

}

.acd-content li{
margin-top: 4%;
font-size: 1.8rem;
margin-left: 1.5em;
}

.acd-content li a{
font-size: 1.8rem;
}
.acd-content li::before{
content: "●";
color: #f9be00;
margin-right: 0.5em;
margin-left: -1.5em;
}

.navi_ul{
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 2% 0;
}

.navi_ul li{
margin: 0 2%;
}

.navi_ul li a{
font-size: 1.8rem;
color: #fff;
}

/*20240423追加ここから*/

.top_btn_03{
width: 90%;
margin: 0 auto;
padding: 5%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin-bottom: 5%;
margin-top: -13%;
}

.top_btn_03 li{
width: 48.5%;
position: relative;
}

.top_btn_03 li div:hover{
opacity: 0.7;
}

li.terms_li{width:100%; margin-top:3rem;}


.top_btn_02_in02{
background: #fff;
text-align: center;
position: relative;
padding: 6% 0;
border: #c7d4ed 5px solid;
border-radius: 20px;
width: auto;
}

.in02_add{padding:3% 0}

.top_btn_02_in02:first-of-type{
position: relative;
top: auto;
right: auto;
}

.top_btn_02_in02:last-of-type{
position: relative;
bottom: auto;
right: auto;
}

.top_btn_02_in02 p{
font-size: 3.0rem;
line-height: 130%;
}

.top_btn_02_in02 i{
color: #a1b8e1;
font-size: 2.0rem;
position: absolute;
bottom: 8%;
right: 4%;
}

.top_btn_02_in02 a{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: block;
}
/*20240423追加ここまで*/


.top_campain img{max-width:654px; margin-bottom:5%;}

