.sp{display: block;}
.ssp{display: none;}

@media screen and (max-width: 1024px) {
.sp{display: none;}
.ssp{display: block;}
}

body {
 background: #fcfcfc;
}
p{
margin-bottom: 0;
}
.row{
margin-right: 0;
margin-left: 0;}

.header { 
box-sizing: border-box;
width: 100%;
font-family: serif;
}
.header-inner {
display: flex;
align-items: center;
justify-content: space-between;
max-width: 1400px;
padding: 10px 0.8em 15px;
margin: 0 auto;
font-size: 1.2em;
}
.logo img {
width: 300px;
}
.header-nav {
display: flex;
}
.header-nav-item {
display: flex;
margin-left: 16px;
}
.header .header-button {
box-sizing: border-box;
display: inline-block;
padding: 0.5em;
text-decoration: none;
cursor: pointer;
user-select: none;
font-weight: bold;
color: #fff;
border-radius: 3px;
}
.header .header-post {
background: #00B900;
border: 1px #00B900 solid;
}
.header .header-login {
background: #00b5ad;
border: 1px #00b5ad solid;
}
.header .header-post:hover,
.header .header-login:hover{
opacity: 0.5;
}
.header .inner-nav {
display: flex;
justify-content: space-around;
width: 90%;
height: 60px;
max-width: 1240px;
padding: 0;
margin: 0 auto;
line-height: 30px;
list-style: none;
}
.header .menu {
font-size: 1vw;
color: #000000;
position: relative;
top: 15px;
height: 30px;
transition-duration: .20s;
}
.header .inner-nav .menu:hover{
border-bottom: 1px solid #000;
}
.header .menu a {
display: flex;
width: 100%;
height: 100%;
justify-content: center;
align-items: center;
text-decoration: none;
letter-spacing: 0.05em;
transition: all .3s;
color: #000;
}
.header .dropdown__lists {
transform: scaleY(0);
transform-origin: center top;
transition: all .3s;
width: 100%;
position: absolute;
top: auto;
left: 0;
font-size: 0.625vw;
list-style: none;
padding-left: 0;
z-index:1;
border: solid 1px #000;
}
.menu:hover .dropdown__lists {
transform: scaleY(1);
}

.header .dropdown__list {
background-color:  #fff;
height: 3.5vw;
transition: all .3s;
position: relative;
}
.header .dropdown__list:not(:first-child)::before{
content: "";
width: 100%;
height: 1px;
background-color: #000;
position: absolute;
top: 0;
left: 0;
}
.header .dropdown__list:hover {
background-color: #dcdcdc;
}
/* ハンバーガーメニューのボタン */
.sp-menu__box {
position: fixed;
top: 20px;
right: 10px;
display: flex;
justify-content: center;
align-items: center;
height: 40px;
width: 40px;
z-index: 100;
background-color: #3584bb;
border-radius: 5px;
}
.sp-menu__box span,
.sp-menu__box span:before,
.sp-menu__box span:after {
content: "";
display: block;
height: 3px;
width: 25px;
border-radius: 3px;
background-color: #ffffff;
position: absolute;
}
.sp-menu__box span:before {
bottom: 8px;
}
.sp-menu__box span:after {
top: 8px;
}
#sp-menu__check {
display: none;
}
#sp-menu__check:checked ~ .sp-menu__box span {
background: rgba(255, 255, 255, 0);
}
#sp-menu__check:checked ~ .sp-menu__box span::before {
bottom: 0;
transform: rotate(45deg);
}
#sp-menu__check:checked ~ .sp-menu__box span::after {
top: 0;
transform: rotate(-45deg);
}
#sp-menu__check:checked ~ .hamburger__content {
left: 0;
}
.sp-menu__content {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: 90;
background-color: #3584bb;
}
.sp-menu__list {
padding: 60px 10px 0;
}
.sp-menu__item {
border-bottom: solid 1px #000000;
list-style: none;
}
.sp-menu__link {
display: block;
width: 100%;
font-size: 16px;
box-sizing: border-box;
color: #000000;
text-decoration: none;
padding: 10px;
}
#sp-menu__check:checked ~ .sp-menu__content {
left: 0;
}
.sp-menu__content {
width: 100%;
height: 100%;
position: fixed;
top: 0;
left: 100%;
z-index: 90;
background-color: #f0ffff;
transition: all 0.5s;
}
.header .toi {
display: flex;
padding: 20px 0;
}
.header .moz{
font-size: 15px;
font-weight: 600;
margin: 10px 5px 5px;
}
.header .kyan{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
padding: 10px;
}
.header .ga{
width: 48%;
}
.header .kyan img{
width: 100%;
}
@media screen and (max-width: 1024px) and (min-width: 768px){
.header .menu {
font-size: 1.5vw;
}
}
@media screen and (max-width: 768px) {
.header .header-nav,
.header .zen {
display: none;
}
.header .box-nav {
display: none;
}
}
@media screen and (min-width: 769px) {
.sp-menu {
display: none;
}
}
.hero img{
  width: 100%;
  height: auto;
}

@media screen and (max-width: 768px) {
.hero .pc_top {
display: none;
}
}

/* 画面サイズが1280px以上の時はスマホ用メニューは非表示 */
@media screen and (min-width: 769px) {
.hero .sp_top {
display: none;
}
}
.section1{
padding-top:40px;
margin-bottom: 30px;
font-family: serif;
}

.section1 .container{
max-width: 1080px;
width: 90%;
margin: 0 auto;
}

.section1 h2{
font-size: 35px;
font-weight: 700;
text-align: center;
margin-bottom: 3rem;
}
.section1 .lead{
font-size: 18px;
}
.section1 .row{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: center;
margin-top: 30px;
}

.section1 .col_plan{
width:100%;
margin-bottom: 40px;
}
.section1 .col_plan:nth-child(4){
position: relative;
}
.section1 .col_plan:nth-child(4)::before {
background: rgba(0, 0, 0, 0.6);
content: '';
background:url('https://stat.ameba.jp/user_images/20250814/16/choice-one/1e/32/p/o1080108015652026269.png');
background-repeat:no-repeat;
background-position: center;
background-size:60%;
width: 95%;
height: 105%;
position: absolute;
top: 0%;
left: 0;
z-index: 1;
}

.section1 h3{
font-size: 30px;
font-weight: 700;
margin-bottom: 25px;
line-height: 1.3;
}

.section1 .plan_top{
padding: 20px;
margin-bottom: 110px;
position: relative;
}
.section1 .plan_top p{
font-size: 18px;
padding-left: 10px;
}
.section1 .plan_img{
position: absolute;
width: 40%;
top: 25%;
right: 5%;
}
.section1 .plan_img img{
width: 100%;
}
.section1 .plan_co{
font-size: 20px;
padding: 10px;
}

.section1 .table_line{
display: table;
width: 100%;
height: 60px;
border-top: 1px solid #dcdcdc;
border-right: 1px solid #dcdcdc;
border-left: 1px solid #dcdcdc;
}
.section1 .table_line:last-child{
border-bottom: 1px solid #dcdcdc;
}

.section1 .block,
.section1 .na{
display: table-cell;
vertical-align:  middle;
padding: 10px;
text-align: center;
}
.section1 .block{
width: 50%;
font-size: 20px;
background-color: #fff;
}
.section1 .na{
font-size: 16px;
font-weight: 600;
width: 40%;
background-color: #f6f3ee;
}

.section1 .item1{
background: linear-gradient(0.25turn, #53a0a6, #6ac3ba, #53a0a6);
color: #ffffff;
}

.section1 .item2{
background: linear-gradient(0.25turn, #fbdaf1, #f9eaf4, #fbdaf1);
color: #e487af;
}
.section1 .item3{
 background: linear-gradient(0.25turn, #f8ebca, #fbf9e2, #f8ebca);
color: #bb8d54;
}
.section1 .item4{
 background: linear-gradient(0.25turn, #bec5bb, #edf5eb, #bec5bb);
color: #000;
}
.section1 .col1,
.section1 .col2{
width:48%;
padding: 10px;
}

.section1 .row1{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin-bottom: 20px;
}

.section1 .btn{
display: block;
text-align: center;
vertical-align: middle;
text-decoration: none;
width: 50%;
padding: 10px;
margin: 20px auto;
font-weight: bold;
background: linear-gradient(to top, rgb(5, 130, 174), #27acd9);
color: #fff;
box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
transition: 0.5s;
font-size: 18px;
}
.section1 .btn:hover{
color: #fff;
opacity: 0.5;
}
@media screen and (max-width: 1024px) and (min-width: 768px){
.section1 .plan_top{
margin-bottom: 70px;
}
.section1 .plan_top p{
font-size: 16px;
}
.section1 .plan_img{
width: 40%;
right: 0%;
top: -17%;
}
.section1 .plan_co{
font-size: 18px;
}
.section1 .na{
font-size: 14px;
}
.section1 .block{
font-size: 16px;
}
}
@media only screen and (max-width: 767px) {
.section1{
padding-top: 40px;
margin-bottom: 0;
}
.section1 h2{
font-size: 25px;
}
.section1 .lead{
font-size: 14px;
}
.section1 .col_plan:nth-child(4)::before {
background-size:80%; 
top: 0;
}
.section1 h3{
font-size: 20px;
}
.section1 .plan_top{
padding: 20px;
margin-bottom: 110px;
}
.section1 .plan_top p{
font-size: 14px;
padding-left: 10px;
}
.section1 .plan_img{
position: absolute;
width: 75%;
top: 90%;
right: 5%;
max-width: 300px;}
.section1 .plan_co{
font-size: 18px;
padding: 10px;
}
.section1 .col1,
.section1 .col2{
width:100%;
padding: 10px;
}
.section1 .table_line{
height: 46px;
}
.section1 .block,
.section1 .na{
padding: 7px;
}
.section1 .block{
font-size: 16px;
}
.section1 .na{
font-size: 14px;
}
.section1 .plan_ho{
font-size: 12px;
}
.section1 .btn{
width: 90%;
padding: 10px 0;
margin: 20px auto;
font-size: 16px;
}
}

.section2 {
padding-top: 40px;
margin-bottom: 40px;
font-family: serif;
}
.section2 .container{
max-width: 1080px;
width: 98%;
margin: 0 auto;
}
.section2 h2{
font-size: 40px;
font-weight: 700;
text-align: center;
margin-bottom: 10px;
}
.section2 hr{
border: solid 2px #2cb67d;
margin: 0 auto 40px;
width: 60px;
}
.section2 .table_line{
display: table;
width: 100%;
border-bottom: 1px solid #dcdcdc;
height: 60px;
}
.section2 .kou{
margin-top: 20px;
font-weight: 600;
}
.section2 .item2{
background: linear-gradient(0.25turn, #fbdaf1, #f9eaf4, #fbdaf1);
color: #e487af;
}
.section2 .item3{
 background: linear-gradient(0.25turn, #f8ebca, #fbf9e2, #f8ebca);
color: #bb8d54;
}
.section2 .item4{
 background: linear-gradient(0.25turn, #bec5bb, #edf5eb, #bec5bb);
color: #000;
}
.section2 .block,
.section2 .na{
display: table-cell;
vertical-align:  middle;
font-size: 18px;
padding: 10px;
width: 25%;
border-right: solid 1px #dcdcdc;
}
.section2 .item2,
.section2 .item3,
.section2 .top{
border-right: none;
}
.section2 .block,
.section2 .top{
text-align: center;
}
.section2 .na{
width: 15%;
font-weight: 600;
text-align: center;
}
.section2 .block{
width: 20%;
}
.section2 .top:nth-child(4){
position: relative;
}
.section2 .top:nth-child(4)::before {
content: '';
background:url('https://stat.ameba.jp/user_images/20250814/17/choice-one/89/68/p/o0636028715652090236.png');
background-repeat:no-repeat;
background-size:50%; 
background-position: center;
width: 95%;
height: 105%;
position: absolute;
top: 10%;
left: 0;
transform: rotate(30deg);
z-index: 1;
}

@media screen and (max-width: 768px) {
.section2{
padding-top: 20px;
margin-bottom: 20px;
}
.section2 h2{
font-size: 25px;
margin-bottom: 10px;
}
.section2 .table_line{
height: 45px;
}
.section2 .block,
.section2 .na{
display: table-cell;
vertical-align:  middle;
font-size: 12px;
padding: 2px;
}
.section2 .na{
width: 25%;
}
.section2 .block{
width: 17%;
}
.section2 .block:nth-child(4){
width: 20%;
}
.section2 .top:nth-child(4)::before {
background-size:80%; 
}

}
.section3 {
padding-top: 40px;
margin-bottom: 40px;
font-family: serif;
}
.section3 .container{
max-width: 700px;
width: 90%;
margin: 0 auto;
}
.section3 h2{
font-size: 40px;
font-weight: 700;
text-align: center;
margin-bottom: 10px;
}
.section3 hr{
border: solid 2px #2cb67d;
margin: 0 auto 40px;
width: 60px;
}

.section3 .table_line{
display: table;
width: 100%;
}
.section3 .kou{
margin-top: 20px;
margin-bottom: 20px;
}

.section3 .block,
.section3 .na{
display: table-cell;
vertical-align:  middle;
font-size: 18px;
padding: 10px;
}
.section3 .na{
font-weight: 600;
width: 50%;
text-align: left;
}
.section3 .top{
border-bottom: 1px solid #000000;
border-top: 1px solid #000000;
text-align: center;
font-size: 22px;
background-color: #ffeddb;
}

.section3 .block{
text-align: right;
width: 25%;
}
.section3 .ken{
width: 25%;
}
.section3 .gou{
margin-top: 20px;
}
.section3 .hoso{
padding-top: 20px;
font-size: 14px;
text-align: right;
}
.section3 .kase{
border-bottom: 1px solid #dcdcdc;
}

@media screen and (max-width: 768px) {
.section3{
padding-top: 20px;
margin-bottom: 20px;
}
.section3 h2{
font-size: 25px;
margin-bottom: 10px;
}
.section3 .kou{
font-size: 18px;
}
.section3 .block,
.section3 .na{
font-size: 14px;
padding: 8px;
}
.section3 .top{
font-size: 18px;
}
.section3 .na{
width: 60%;
}
.section3 .hoso{
font-size: 10px;
}
}

.section4{
padding: 20px 0;
font-family: serif;
}
.section4 .container{
max-width: 1080px;
width: 90%;
margin: 0 auto;
}
.section4 h2{
font-size: 22px;
font-weight: 700;
text-align: center;
margin-bottom: 10px;
}

.section4 a.toi {
display: block;
text-align: center;
width: 40%;
padding: 10px 5px;
font-size: 20px;
font-weight: bold;
border: 2px solid #1bcca9;
background: #1bcca9;
color: #fff;
border-radius: 100vh;
transition: 0.5s;
margin: 0 auto;
}
@media screen and (max-width: 768px) {
.section4 h2{
font-size: 18px;
}
.section4 a.toi {
width: 70%;
font-size: 15px;
}
}
    
    
.footer {
 color: #808080;
font-family: serif;}

.footer .wrap {
 max-width: 1280px;
 width: 90%;
 margin: 0 auto;
 display: flex;
 flex-wrap: wrap;
justify-content: space-around;
}
.footer .wrap .box:first-child,
.footer .wrap .box:nth-child(2) {
 width: 28%;
}
.footer .wrap .box:nth-child(3) {
 width: 40%;
}
.footer .gazou{
 width: 90%;
margin-bottom: 20px;
}
.footer img{
 width: 100%;
}
.footer .box .address,
.footer .box p{
font-size: 14px;
margin: 0 0 5px;
}
.footer .footer_menu{
display: flex;
line-height: 1.5;
list-style: none;
margin: 10px 0;
padding-left: 0;
justify-content: center;
}
.footer .footer_menu li{
font-size: 16px;
padding: 0 9px;
border-right: 1px #c4c4c4 solid;
}
.footer .footer_menu li:last-child{
border-right: none;
}
.footer .box_ibj{
width: 100%;
 display: flex;
justify-content: space-evenly;
margin-bottom:10px;
}
.footer .box_ibj .col{
display: flex;
align-items: center;
width: 8%;
}
.footer .box_ibj .col:first-child{
width: 40%; 
}
.footer .row{
display: flex;
flex-wrap: wrap;
justify-content: space-evenly;
align-items: center;
}
.footer .partnership .col{
width: 33%;
font-size: 10px;
}
.footer a{
color: #808080
}
.footer .copyright {
 width: 100%;
 padding: 20px 0 0 0;
text-align:center;
}
.footer .kopi{
font-size: 12px;
}
.footer a:hover {
 text-decoration: underline;
}
@media screen and (max-width: 1024px) and (min-width: 768px){
.footer .wrap .box:first-child,
.footer .wrap .box:nth-child(2){
 width: 50%;
}
.footer .wrap .box:nth-child(3){
width: 75%;
}
}
@media only screen and (max-width: 767px) {
.footer .wrap .box:first-child,
.footer .wrap .box:nth-child(2), 
.footer .wrap .box:nth-child(3){
 width: 100%;
}
.footer .box_ibj{
width: 100%;
 display: flex;
justify-content: space-between;
margin-bottom:10px;
}
.footer .gazou{
 width: 100%;
margin-bottom: 0;
}
.footer .box_ibj .col{
width: 9%;
margin-right: 0;
}
.footer .box_ibj .col:first-child{
width: 50%; 
}
.footer .footer_menu{
line-height: 1.8;
}
.footer .footer_menu li{
font-size: 12px;
padding: 0 2px;
}
}