@charset "UTF-8";

html{
	font-size: 62.5%; 
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	overflow: auto;
	}

body{
	font-family: "avenir-next-lt-pro" , "Zen Kaku Gothic New", sans-serif;
	font-optical-sizing: auto;

	font-style: normal;
	color: #070707;
	letter-spacing: 0.03em;
	line-height: 1.8;
	padding-top: 0!important;
	font-feature-settings: "palt";
	font-size: clamp(1.5rem, 1.7vw, 1.7rem);
}

p{
	font-weight: 500;
}


:root{
--text: #231815;
--gray:#acadae;


--bei:#f6f0f0;
--purple:#555598;

--tsukua:"fot-tsukuardgothic-std", sans-serif;
--red: #e64241;





--grayblue:#ebf1fb;
--whiteblue:#f0faff;
--liblue:#5076bd;
--pink:#d47676;
--green: #33a779;
--white:#fff;
--blue: #273775;
--yellow: #fbfbeb;/* 外側の淡い背景 */
    --card-bg: #FFFFFF; /* 中央の白いボックス */
    --page-padding: 64px; /* 外側の余白 */
    --card-radius: 20px;  /* ボックスの角丸 */
    --triangle-size: 48px; /* 下の三角の高さ（px） */
    --max-width: 1200px;


}





a:hover{
	opacity: 0.7;
}

img{
	width: 100%;
	height: auto;
}

.sp{
	display: none;
}

.sp_02{
	display: none;
}

.pc{
	display: block;
}

.pc_02{
	display: block;
}

.ipad{
	display: none;
}

.mat_2{
	margin-top: 2%;
}

.mat_5{
	margin-top: 5%;
}

.pab_10{
	padding-bottom: 10%;
}

.te_ce{
	text-align: center;
}

.pa2{
	padding: 0 2%;
}

sup {
  font-size: 0.7em;
  vertical-align: super;
}

/* ---------------
	head
----------------*/


/* ---------------
	main
----------------*/

.max{
	max-width: 1200px;
	margin: 0 auto;
}

.max_b{
	max-width: 1350px;
	margin: 0 auto;
}

.wrap{
	margin: 0 5%;
}

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

/* 最初は透明＋少し下に */
.fadein {
  opacity: 0;
  transition: opacity 1.6s ease-out, transform 1.6s ease-out;
transform: translateY(30px);
  transition-delay: 0.2s;
}

/* 見える位置に来たら show がつく → ふわっと表示 */
.fadein.show {
  opacity: 1;
  transform: translateY(0);
}


/* 最初は透明＋縮小 */
.fadein-center {
  opacity: 0;
  transform: scale(0.8); /* 少し縮めておく */
  transition: opacity 1.6s ease-out 0.5s, transform 1.6s ease-out 0.5s;
  transform-origin: center center; /* 中央から拡大 */
}

/* 画面に入ったら拡大しながら表示 */
.fadein-center.show {
  opacity: 1;
  transform: scale(1); /* 元サイズに戻る */
}




/* ---------------
	top
----------------*/

.top{
	max-width: 1380px;
	margin: 0 auto;
	position: relative;
	padding-top: 90px;
}

.top_m{
	position: absolute;
	bottom: 0;
}


.top_up{
	position: relative;
    width: 100%;
	aspect-ratio: 16 / 9; 
	/* 
	background-position:center;
	height: 70vh;
	 */
    overflow: hidden;
	/* 
	-webkit-mask-image: linear-gradient(to bottom, black 70%, transparent 100%);
 	mask-image: linear-gradient(to bottom, black 70%, transparent 100%);  
	 */
}

.top_up .slideimg{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
	height: 100%;

    opacity: 0;
     animation: cinematicFade 15s infinite ease-in-out;
}

.top_up .slideimg picture,
.top_up .slideimg img {
	width: 100%;
  height: 100%;
  object-fit: cover; /* 縦横比を維持して親にフィット */
  display: block;
}


.top_up .slideimg:nth-child(1) { animation-delay: 0s; }
.top_up .slideimg:nth-child(2) { animation-delay: 5s; }
.top_up .slideimg:nth-child(3) { animation-delay: 10s; }

/* シネマティックなフェード + 微ズーム */
@keyframes cinematicFade {
  0%   { opacity: 0; }
  10%  { opacity: 1; }   /* ゆっくり浮かび上がる */
  33%  { opacity: 1; }   /* しばらく表示 */
  40%  { opacity: 0; }   /* ゆっくり消えていく */
  100% { opacity: 0; }
}




.lead_di{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 42px;
	margin-left: 6%;
	margin-right: 6%;	
	padding: 10% 0;
}

.lead_l{
	margin-top: -2%;
}

.lead_r{
	width: 38%;
}


h1{
	font-size: clamp(2.25rem, 3vw, 3rem);	
	font-weight: 700;
	color: var(--blue);
}

.underline{
	border-bottom: 1px solid #191970;
	font-weight: 700;
}

.lead_l__de{
	margin-top: 3%;
}




.lead_bo{
    background: var(--yellow);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

/* ラッパー（左右の余白を保ちつつ中央寄せ） */


  /* ヒーロー領域（淡い背景の“パネル”） */
  .lead_bo__de {
    position: relative;
    padding: 7% 0; /* 下部に三角分の余白を確保 */
    box-sizing: border-box;
    /* 見た目の幅は内側カードで決めるため hero 自体は幅いっぱいに */
  }

  /* 下向きの三角（吹き出し風）を hero の疑似要素で作る */
  .lead_bo__de::after{
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -7%; /* 境目にぴったり付ける */
    width: 0;
    height: 0;
    border-left: calc(var(--triangle-size) * 0.9) solid transparent;
    border-right: calc(var(--triangle-size) * 0.9) solid transparent;
    border-top: var(--triangle-size) solid var(--yellow);
    /* ほんの少し影を入れる場合（任意） */
    filter: drop-shadow(0 1px 0 rgba(0,0,0,0.02));
    pointer-events: none;
  }

  /* 中央に置く白いカード（角丸） */
  .card {
    background: #fff;
    border-radius: var(--card-radius);
    padding: 5% 3% 0;
    box-sizing: border-box;
    width: 100%;
    /* 見た目上の左右の余白（画像に合わせている） */
    max-width: calc(100% - 140px); /* hero の内側余白と合わせるための余裕 */
    margin: 0 auto;
  }


  .lead_btn__up{
	padding: 15% 0 0;
	text-align: center;

  }

  .lead_btn__up img{
	width: 500px;
	display: block;
  	margin: 0 auto;
  }

  .lead_btn p{
		font-weight: 700;
		color: var(--blue);
  }

	.lead_btn__up p{
		font-size: clamp(2.6rem, 3vw, 3rem);	

		padding-top: 1%;
	}

  .lead_btn__bo{
	text-align: center;
  } 


  .lead_btn__bo p{
	font-size: clamp(1.8rem, 2.2vw, 2.2rem);
	line-height: 1.7;
	padding-top: 1%;
  }


  .lead_btn__area{
	display: flex;
	gap: 2.6%;
	padding-top: 2%;
  }

  .lead_btn__area div{
	width: 31.6%;
  }
  

  .st01{
	background-image: url(../img/st/st01_back.gif);
	background-size: cover;
  	background-repeat: no-repeat;/*画像が繰り返すのを防ぐ*/
	background-position: center top;
	margin-top: 12%;
	padding-bottom: 32%;
  }

    .st02{
	background-image: url(../img/st/st02_back.gif);
	background-size: cover;
  	background-repeat: no-repeat;/*画像が繰り返すのを防ぐ*/
	background-position: center top;
	margin-top: -20%;
	padding-bottom: 32%;
  }

    .st03{
	background-image: url(../img/st/st03_back.gif);
	background-size: cover;
  	background-repeat: no-repeat;/*画像が繰り返すのを防ぐ*/
	background-position: center top;
	margin-top: -20%;
	padding-bottom: 20%;
  }

 
  .stall_back{
	position: relative;
  }

   .st_back{
	position: absolute;
  }

  .st01_back01{
	width: 45%;
	top: 6%;
	left: -5%;
  }

   .st01_back02{
	width: 25%;
	bottom: 37%;
	right: -5%;
  }

    .st02_back01{
	width: 41%;
	top: 14%;
	left: -4%;
  }

   .st02_back02{
	width: 20%;
	bottom: 11%;
	right: -2%;
  }

    .st03_back01{
	width: 41%;
	top: 14%;
	left: -4%;
  }

   .st03_back02{
	width: 20%;
	bottom: 11%;
	right: -2%;
  }





.st_top_br{
	display: none;
}


	.st02_im ,.st03_im{
		max-width: 40%;
		position: relative;
		z-index: 50;
	}

@media (max-width: 1100px) {
	.st_top_br{
		display: block;
	}
}

@media (max-width: 1050px) {

}


@media (max-width: 900px){

}



  .st_top{
	padding-top: 23%;
  }

  .st_top_di{
	display: flex;
	align-items: flex-end;
  }

   .st02 .st_top{
	padding-top: 34%;
	width: 60%;
  }

    .st03 .st_top{
		padding-top: 34%;
		width: 60%;
	
	}

    .st_top p, h2{
	color: var(--white);
  }



	.st02_im img{
		margin-left: 20%;
    margin-top: 0%;
    margin-bottom: -15%;
	}

		.st03_im img{
		margin-left: 20%;
    margin-top: 0%;
    margin-bottom: -15%;
	}




    .st_top p:first-of-type{
		font-size: clamp(2.1rem, 2.6vw, 2.6rem);
		line-height: 1.2;
	}

	.st_top p, h2{
		font-size: clamp(2.8rem, 3.4vw, 3.4rem);
		font-weight: 700;
		line-height: 1.2;
		margin-top: 5px;
	}

	.st_top p:last-of-type{
		font-size: clamp(1.6rem, 2vw, 2rem);
		line-height: 1.38;
		font-weight: 500;
	}

	.st_whi{
		background-color: var(--white);
		padding: 3% 7% 5%;
		margin-top: 3%;
	}

	.qa_whi{
		background-color: var(--white);
		padding: 3% 13.5% 6%;
		margin-top: 3%;
	}

	.st_whi_lead p{
		font-size: clamp(2.2rem, 2.6vw, 2.6rem);
		line-height: 1.42;
		font-weight: 700;
		
	}

	.st01 .st_whi_lead p{
		color: var(--green);
	}


	.st01 .btn_center{
		margin-top: 5%;
	}

	.st02 .st_whi_lead p{
		color: var(--pink);
		text-align: center;
		height: 50px;      /* ← タイトル高さ統一 */
		display: flex;
		align-items: center; /* ← 下揃えで整列 */
		justify-content: center;
		margin-bottom: 3%;
		line-height: 1.3;
	}

	.st03 .st_whi_lead p{
		color: var(--liblue);
		text-align: center;
		height: 50px;      /* ← タイトル高さ統一 */
		display: flex;
		align-items: center; /* ← 下揃えで整列 */
		justify-content: center;
		margin-bottom: 5%;
	}


	.st03 .st_whi_lead_all p{
		text-align: center;
	}

	.st03 .st_whi_lead_all p:first-of-type{
		color: var(--liblue);
		text-align: center;
		font-size: clamp(2.2rem, 2.6vw, 2.6rem);
		line-height: 1.42;
		font-weight: 700;
		margin-bottom: 8px;
	
	}

	.st03 .btn_center{
		margin-top: 3%;
	}

	.st_whi_div{
		display: flex;
		justify-content: space-between;
		gap:6%;
		padding-top: 2%;
	}

	.st_whi_div__l{
		width: 56%;
	}

	.st_whi_div__r{
		width: 38%;
	}

	.note{
		font-size: clamp(1.4rem, 1.5vw, 1.5rem);
		line-height: 1.4;
		padding-top: 2%;
	}

.btn_center{
	width: 320px;
	margin: 0 auto;

}


.st_whi_side{
	display: flex;
	flex-wrap: wrap;
}

.st_whi_side_squ{
	width: 50%;
}

.st_whi_side_squ:nth-child(odd) {
	padding: 5% 5% 4% 2%;
	border-right: 2px solid var(--pink);
}

.st_whi_side_squ:nth-child(even) {
	padding: 5% 2% 4% 5%;
}

.st_whi_side_squ:nth-child(-n+4){
	border-bottom: 2px solid var(--pink);
}

.st_whi_side_squ:nth-child(-n+2){
	padding-top: 2%;!important
}


.st_whi_vert{
	display: flex;
}

.st_whi_vert_squ{
	width: 36%;
}

.st_whi_vert_squ:first-child {
	padding: 3% 3% 3% 0%;
}

.st_whi_vert_squ{
	padding: 3% 2% 3%;
}

.st_whi_vert_squ:last-child {
	padding: 3% 0% 3% 3%;
}

.st_whi_vert_squ:nth-child(-n+2) {
	border-right: 2px solid var(--liblue);
}

.st_whi_vert_squ:nth-child(odd) {
	width: 32%;
}



.st03_ti{
	font-size: clamp(2.6rem, 3.2vw, 3.2rem);
	font-weight: 700;
	color: var(--liblue);
	text-align: center;
	margin-bottom: 3%;
}




  .rct{
	background-color: var(--whiteblue);
  }


  .rct_box{
	padding: 14% 0 16%;
  }

  .rct_whi_div{
	display: flex;
    justify-content: center;
    gap: 30px;
	align-items: center;
   
  }

    .rct_ehi_div_l{
		width: 65%;
	}
  
  .rct_whi_div__l p{
	font-size: clamp(1.6rem, 1.8vw, 1.8rem);
  }

  .rct_ehi_div_r{
	width: 35%;
  }

  .btn_center p{
	text-align: center;
	font-size: clamp(1.6rem, 2.0vw, 2.0rem);
	font-weight: 700;
	color: var(--blue);
	padding-bottom: 1%;
  }

.rct_box .btn_center{
	margin-top: 5%;
}




.zigzag .section_lead{
	padding-top: 300px;
}


.zigzag {
	background-color: var(--grayblue);
	margin-top: 30%;
	position: relative;
	padding-bottom: 6%;
	margin-bottom: 25%;
}

.zigzag_top{
	position: absolute;
	max-width: 900px;
	right: 0;
	top: -12%;
}

.zigzag_bottom{
	position: absolute;
	max-width: 580px;
	left: 0;
	bottom: -5%;
}

.zigzag_area{

  display: flex;
flex-wrap: wrap;
-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;

  margin-bottom: 120px;
  position: relative;
}

.zig_item {
	background-color: var(--white);
	padding: 4% 3% 5%;
	width: 50%;
	align-items: flex-start;
}



.zig_item:nth-child(2){
	margin-top: 40%;

}

.zig_item:nth-child(3){
	margin-top: -10%;
}

.zig_item:nth-child(4){
	margin-top: 16%;
}

.zig_item__de div {
	width: 14%;
	margin: 0 auto;
}

.zig_lead{
	text-align: center;
	font-size: clamp(1.6rem, 1.8vw, 1.8rem);
	font-weight: 700;
	line-height: 1.63;
	padding-top: 3%;
}

.zig_item__de h4{
	text-align: center;
	font-size: clamp(2.2rem, 2.6vw, 2.6rem);
	font-weight: 700;
	line-height: 1.5;
	color: var(--pink);
	padding-top: 1.5%;
}

.zig_txt{
	padding-top: 3%;
}


.zig_item.reverse {
  grid-template-columns: 1fr 1fr;
  direction: rtl;
}

.zig_item.reverse .zig_text {
  direction: ltr;
}

.zig_text h3 {
  font-size: 28px;
  font-weight: 700;
  color: #db5757;
  margin: 16px 0;
  line-height: 1.5;
}

.zig_text p {
  font-size: 16px;
  line-height: 1.8;
}

.zig_img img {
  width: 100%;
  margin-top: 3%;

}

.zig_img_btn{
	width: 380px;
	margin: 3% auto 0 ;
}


.section_lead{
	text-align: center;
	font-size: clamp(2.6rem, 3.4vw, 3.4rem);
	font-weight: 700;
	line-height: 1.8;
	color: var(--blue);
	padding-top: 30px;
	padding-bottom: 40px;
}

.int_box{
	background-image: url(../img/int_i03.png);
	background-size:contain;
	background-repeat: no-repeat;
	background-position: center;
	padding: 5% 7%;
	margin-bottom: 15%;
}


.int_div{
	display: flex;
    justify-content: center;
    gap: 42px;
	align-items: flex-end;
	padding-top: 2%;
	padding-bottom: 3%;
}


  
  .int_div__l{
	width: 35%;

  }

.int_div_r p{
	color: var(--blue);
}

  .rct_ehi_div_r{
	font-size: clamp(1.6rem, 1.8vw, 1.8rem);
  }


  .int_div_r_f{
	font-weight: 700;
	font-size: clamp(1.6rem, 1.8vw, 1.8rem);
	line-height: 1.2;
  }


  .int_div_r_s{
	font-size: clamp(1.2rem, 1.4vw, 1.4rem);
  }


  .int_div_r_t{
	line-height: 1.6;
	padding-top: 2%;
  }



  .qa_box{
	padding-bottom: 15%;
  }
  

  .accordion-003 {
    margin-bottom: 7px;
}

.accordion-003 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 2% 3%;
    font-weight: 600;
    cursor: pointer;
	font-size: clamp(1.6rem, 1.8vw, 1.8rem);
	line-height: 1.6;
}

.accordion-003 summary::-webkit-details-marker {
    display: none;
}

.accordion-003 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 8px;
    height: 8px;
    margin-left: 5px;
    border-bottom: 3px solid #070707b3;
    border-right: 3px solid #070707b3;
    content: '';
    transition: transform .3s;
}

.accordion-003[open] summary::after {
    transform: rotate(225deg);
}

.accordion-003 p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 0 4% 4%;
    transition: transform .5s, opacity .5s;
	line-height: 1.6;
    font-weight: 500;
}

.accordion-003[open] p {
    transform: none;
    opacity: 1;
}



.qa_whi .btn_center{
	padding-top: 4%;
}


footer{
	background-color: #d0daec;
}

.area_top{
	padding-top: 12%;
	padding-bottom: 5%;
}

.foot img{
	width: 50%;
}

.foot{
	text-align: center;
}

.foot p{
	margin-top: 2%;
}

.foot small{
	font-size: clamp(1rem, 1.2vw, 1.2rem);
}






@media (max-width: 1500px) {
	.max{
		margin-left: 8%;
		margin-right: 8%;

	}

	.max_b{
		margin-left: 5%;
		margin-right: 5%;

	}
}

@media (max-width: 1300px){
	.lead_di{
		margin-left: 0%;
    	margin-right: 0%;
	}
} 

@media (max-width: 1200px){
	.zig_img_btn{
		width: 88%;
	}

	  .card {
		max-width: 100%; /* hero の内側余白と合わせるための余裕 */
	}

}

@media (max-width: 750px){
	.st_whi_side{
		display: block;
	}

	.st_whi_side_squ{
		width: 100%;
	}

	.st_whi_side_squ:nth-child(odd){
		border-right: none;
		padding: 4% 3% 6% 3%;
	}

	.st_whi_side_squ:nth-child(even){
		padding: 4% 3% 6% 3%;
	}

	.st_whi_side_squ:nth-child(-n+5){
		    border-bottom: 2px solid var(--pink);
	}


	.rct_whi_div{
		display: block;
	}

 .pc_02{
	display: none;
 }


	}

	




@media (max-width: 750px){
	.pc{
		display: none;
	}

	.sp{
		display: block;
	}


	.top_up{
		mask-image:none;
		aspect-ratio: 390 / 570;
	}
	
	.lead_di{
		display:block;
		width: 80%;
		margin: 0 auto;
	}

	.lead_r{
		width: 100%;
		padding-top: 3%;
	}

	.max{
		margin-left: 5%;
		margin-right: 5%;
	}

	.lead_bo__de::after{
		bottom: -5%;
	}

	.lead_btn__up img{
		width: 90%;
	}

	.lead_btn__up{
		padding: 25% 0 0;
	}
	
	.lead_btn__area{
		display: block;
		
	}

	.lead_btn__area div{
		width: 100%;
		margin-top: 7%;
	}
	
	.st_top{
		padding-top: 53%;
	}

	.st_whi_div{
		display: block;
		    padding-top: 3%;
	}

	.st_whi_div__l{
		width: 100%;
	}

	.st_whi_div__r{
		width: 100%;
		padding-top: 6%;
	}

	.st_whi{
		    padding: 9% 6% 7%;
			margin-top: 9%;
	}

	.st_whi__sp{
		margin-top: 4%;!important
	}

	.btn_center{
		width: 90%;
	}

	.card img{
		width: 90%;
		margin: 0 auto;
		padding-top: 6%;
	}

	.st_top_di{
		display: block;
	}

	.st02 .st_top{
		width: 100%;
		padding-top: 57%;
	}

	.st02_im, .st03_im{
		max-width: 100%;
	}

	.st02_im img{
		margin-left: 0%;
		margin-top: 5%;
		margin-bottom: 0%;
	}

	.st03 .st_top{
		width: 100%;
		padding-top: 47%;
	}

	.st03_im img{
	  	margin-left: 0%;
    	margin-top: 5%;
    	margin-bottom: 0%;
	}


  .st01_back01{
	width: 67%;
	top: 8%;
	left: -7%;
  }

   .st01_back02{
	width: 55%;
	bottom: 17%;
	right: -5%;
  }

    .st02_back01{
	width: 96%;
	top: 8%;
	left: -3%;
  }

   .st02_back02{
	width: 50%;
	bottom: 13%;
	right: -11%;
  }

    .st03_back01{
	width: 90%;
	top: 8%;
	left: -13%;
  }

   .st03_back02{
	width: 60%;
	bottom: 13%;
	right: -8%;
  }




	.st_top p, h2{
		margin-top: 8px;
	}

	.st_whi_vert{
		display: block;
	}

	.st_whi_vert_squ:first-child{
		padding: 4% 3% 6% 3%;
	}

	.st_whi_vert_squ{
		width: 100%;
		padding: 4% 3% 6% 3%;
	}

	.st_whi_vert_squ:nth-child(odd){
		width: 100%;
	}

	.st_whi_vert_squ:nth-child(-n+2){
		border-right: none;
		border-bottom: 2px solid var(--liblue);
		
	}

	.st_whi_vert_squ:nth-child(2){
		padding: 8% 3% 8% 3%;
	}

	.st03 .st_whi_lead p{
		margin-bottom: 3%;
	}

	.rct_ehi_div_r{
		width: 100%;
		padding-top: 4%;
	}

	.zigzag_top{
		top: 0;
	}

	.zigzag_area{
		display: block;
	}

	.zig_item{
		width: 100%;
		padding: 9% 6% 14%;
	}

	.zig_item__de div{
		width: 20%;
	}

	.zig_item, .zig_item.reverse{
		margin-bottom: 0;
	}

	.zig_item:nth-child(2){
		margin-top: 0;
		padding-top: 10%;
	}

	.zig_item:nth-child(3){
		margin-top: 0%;
		padding-top: 10%;
	}

	.zig_item:nth-child(4){
		margin-top: 0;
		padding-top: 10%;
	}

	.int_div{
		display: block;
	}

	.int_div__l{
		width: 100%;
	}

	.int_div_r{
		margin-top: 3%;
	}


	.qa_whi{
	padding: 7% 6% 7%;
	}

	.section_lead{
		padding-bottom: 20px;
		padding-top:0;
	}

	.area_top{
		    padding-top: 12%;
			padding-bottom: 75px;
	}

	.foot img{
		width: 100%;
	}
	
	
} 

@media (max-width: 500px){
	.lead_di{
		display:block;
		width: 100%;
		margin: 0 auto;
	}

	.zigzag .section_lead{
		padding-top: 250px;
	}


}








































































@media (max-width: 750px) {
	.sp{
		display: block;
	}

	.pc{
		display: none;
	}









}








#pageTop {
  position: fixed;
  bottom: 30px;
  right: 30px;
}

#pageTop a {
  display: block;
  z-index: 999;
  padding: 9px 0 0 1px;
  border-radius: 40px;
  width: 45px;
  height: 45px;
  background-color: #0f345b;
  color: #fff;
  font-size: 12px;
  line-height: 0.9em;
  text-align: center;
   font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 500;
}



/* ハンバーガーアイコン */
.hamburger-menu {
	text-align: center;
  }

.hamburger-icon {
	cursor: pointer;
	display: flex;
	flex-direction: column;
	gap: 5px;
	width: 22px;
	height: 16px;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 1000;
  }
  
  /* ハンバーガーの線 */
  .hamburger-icon span {
	display: block;
	width: 24px;
	height: 2px;
	background: #fff;
	transition: opacity 0.3s ease-in-out;
	position: absolute;
  }
  

  .hamburger-circle {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #273775;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	margin: 0 auto;
	position: relative;
  }

  /* MENU テキスト */
  .menu-text {
	font-size: 10px;
	color: white;
	margin-top: 2px;
	transition: 0.3s;
  }

/* MENU文字は完全に非表示 */
.hamburger-menu.active .menu-text {
	display: none;
  }
  
  .hamburger-menu.active .menu {
	display: block;
  }

  /* 1本目（上の線） */
  .hamburger-icon span:nth-child(1) {
	top: 2px;
  }
  
  /* 2本目（中央の線） */
  .hamburger-icon span:nth-child(2) {
	top: 62%;
	transform: translateY(-50%);
  }
  
  /* 3本目（下の線） */
  .hamburger-icon span:nth-child(3) {
	bottom: -2px;
  }
  
  /* フルスクリーンメニュー */
  .menu {
	position: fixed;
	top: 90px;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(19, 71, 157, 0.9);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease-in-out;
  }

  .menu_nav{
	height: calc(100vh - 90px);
	position: relative;
}
  
  /* メニューが開いたとき */
  .menu.active {
	opacity: 1;
	visibility: visible;
  }
  
  /* メニューのリンク */
  .menu ul {
	list-style: none;
	padding: 0;
	text-align: center;
	position: absolute;
	top: 50%;
    left: 46%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	max-width: 560px;
	width: 80%;
  }
  
  .menu li {
	padding: 5% 3%;
	border-bottom: 1px solid #fff;
  }

  .menu li a{
	display: flex;
	align-items: center;
	justify-content:space-between ;
  }
  
  .menu a {
	color: #fff;
	font-size: 24px;
	text-decoration: none;
	transition: color 0.3s;
  }
  
  .menu a:hover {
	color: #ddd;
  }
  .hamburger-menu.active .hamburger-icon span {
	background: #fff;
  }
  /* ハンバーガーアイコンが「×」に変形 */
  .hamburger-menu.active .hamburger-icon span:nth-child(1) {
	transform: translateY(5px) rotate(45deg);
  }
  
  .hamburger-menu.active .hamburger-icon span:nth-child(2) {
	opacity: 0;
  }
  
  .hamburger-menu.active .hamburger-icon span:nth-child(3) {
	transform: translateY(-10px) rotate(-45deg);
  }
  
  /* ハンバーガーアイコン */


  .ham_arrow {
	position: relative;
	display: inline-block;
	width: 10px;
	height: 10px;
  }
  
  .ham_arrow::before,
  .ham_arrow::after {
	content: "";
	position: absolute;
	top: calc(50% - 0.25px);
	right: 0;
	width: 14px;
	height: 2.5px;
	border-radius: 9999px;
	background-color: #fff;
	transform-origin: calc(100% - 0.25px) 50%;
  }
  
  .ham_arrow::before {
	transform: rotate(45deg);
  }
  
  .ham_arrow::after {
	transform: rotate(-45deg);
  }

  .menu_ti{
	font-weight: 500;
    font-size: clamp(1.7rem, 2.2vw, 2.2rem);
    line-height: 1.35;
	text-align: left;
  }
  
  .menu_ti .sma{
	font-weight: 600;
	font-size: clamp(1.3rem, 1.5vw, 1.5rem);

    line-height: 1.1;
  }

header{
	height: 90px;
	position: fixed;
	background-color: #fff;
	width: 100%;
	z-index: 999;
}

.head{
	position: relative;
	height: 90px;
	display: flex;

	padding: 10px 20px;
	margin: 0 auto;
	align-items: center;
    justify-content: space-between;
}


.header_logo{
	height: auto;
	max-width: 420px;
}

.header_logo img{
	width: 100%;
	display: block;
}


.header_r__btn img{
	height: 45px;
	width: auto;
}

header{
	height: 100px;
	margin: 0 auto;

}

.head{
	display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
	height: 100px;
    margin: 0 auto;
		position: fixed;
		z-index: 999;
		background-color: #fff;
}

.head_l{
	width: 77%;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.head .logo{
    padding-left: 2%;
}

.head .logo img{
	max-width: 220px;
}



.head .btn{

    background-color: #555598;
    position: relative;

}

.head .btn img{
	position: absolute;
    padding: 3%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;

}






.header_r {
  display: flex;
  justify-content: flex-end;
  gap: 24px; /* ボタン間の余白 */
  align-items: center;
  width: 63%;
}

.btn {
  display: inline-block;
  padding: 10px 36px;
  border-radius: 7px;
  color: #fff;
  font-size: 15px;
  text-decoration: none;
  text-align: center;
  transition: opacity .3s;
}

.btn-01 {
  background: linear-gradient(90deg, #3A82C7, #2E6FB3);
}

.btn-02 {
  background: linear-gradient(90deg, #345FAC, #2B4FA0);
}

.btn:hover {
  opacity: 0.8;
}

main{
	position: relative;
	overflow: hidden;
}

.bottom__btn{
	position: absolute;
}

/* スマホ（～750px）で縦並び */
@media screen and (max-width: 750px) {
  .btn-area {
    flex-direction: column;
    gap: 16px;
  }

  .btn {
    width: 100%;
    max-width: 340px;
    margin: 0 auto;
  }
}

@media (max-width: 950px){
	.header_logo{
		width: 50%;
	}
} 

@media (max-width: 750px) {
	.menu ul{
		width: 86%;
	}

	.menu li{
		    padding: 6% 3%;
	}

	.header_r{
		height: 70px;
	}

	header{
		height: 70px;
	}

	.head{
		height: 70px;
		padding: 10px 10px 10px 5px;
	}

	.top{
		padding-top: 70px;
	}

	.header_logo{
		width: 140%;
	}

	.menu{
		top: 70px;
	}


	.fixed-btn-area {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  text-align: center;
  z-index: 999; /* 上に重ねる */
}

.fixed-btn-area .btn-b {
  flex: 1;
  padding: 15px 0;
  color: #fff;
  font-size: 15px;
	font-weight: 700;
  text-decoration: none;
}

.fixed-btn-area .btn-01 {
  background: #3A82C7;
}

.fixed-btn-area .btn-02 {
  background: #345FAC;
}

/* スマホで上下余白 */
body {
  padding-bottom: 60px; /* ボタンの高さ分を確保 */
}



}





























@media (max-width: 750px) {
	#pageTop {
	  position: fixed;
	  bottom: 70px;
	  right: 15px;
	}
}/* @media閉じタグ */


