@charset 'UTF-8';


body{}

/*
h2{font-family: yu-mincho-pr6n, sans-serif;
font-style: normal;
font-weight: bold;

font-size:20px;
font-size:clamp(18px,8vw,20px);
line-height: 25px;

padding-left:0;display:block;color:; 
border-bottom:none;}
*/

h1{
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック";
	display:block;
	margin:0;
	font-size:12px;
	line-height:17px;
	color:#888;
	text-align:right;
	padding-left:10px;
	padding-right:10px;
}



h2{
font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック";
font-style: normal;
font-weight: bold;

/*20250820 yuminccho-pr6nはsystemfont*/
/*20250827webフォント　yu-mincho-pr6n, sans-serif,*/
font-size:27px;
font-size:clamp(18px,2.9vw,27px);
line-height: 31px;
/*20250822 まではfont-size:clamp(18px,8vw,20px);line-height: 25px;→小さすぎる、やはり一旦27pxで*/
/*20250820 まではfont-size: 22px line-height:24px */
/*20250820 まではline-height:24px "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, sans-serif;*/
padding-left:0;display:block;color:;
padding-left:15px;

}



h3{font-size: 22px; /*20250820 まではfont-size: 22px */
	line-height:24px;/*20250820 まではline-height:24px */
	font-family:"メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, sans-serif;
	font-weight:bold;

    margin: 0 0px 0px 0px;
    padding: 0px 0px 0px 0px;

    text-align: left;
    letter-spacing: normal;
    color: #f35e93;
}




h4{font-size: 22px; /*20250820 まではfont-size: 22px */
	line-height:24px;/*20250820 まではline-height:24px */
	font-family:"メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, sans-serif;
	font-weight:bold;

    margin: 0 0px 0px 0px;
    padding: 0px 0px 0px 0px;

    text-align: left;
    letter-spacing: normal;
    color: #f35e93;
}
	
	
.full_wide_img
{
    width: 100%;
    height: auto;/* 高さを自動調整 */
	display:block;/*　250826追加 imgは初期設定がinlineなのでmargin 0 auto無効なのでblock要素に蛙*/
}




  /* 全表示サイズ共通設定 */

.contents-pc40-sp78-ver2508
{	overflow: hidden;
	width: 40%;
	margin-left:auto;
	margin-right:auto;
}

.login_wrapper1 {
    width: 80%;
    margin: 0 auto;
    display: flex;
    justify-content: flex-end;
    align-items: center; /* 必要に応じて */
    overflow: hidden;
}

.login_mo_top a {
    display: block;
    width: 160px;
    height: 35px;
    background-image: url(../img/bt/bt_login_blue-04.png);
}

.login_mo_top a:hover {
    background-position: 0 -35px;
}


.flexbox1{
display:flex;justify-content:center;  /* スマホ表示時は中央揃え */}

.flexgap-a{gap:4px 4px;}



  /* 全表示サイズ共通設定 */
  
  
  /*ボタン */
.btn_2508purple,
a.btn_2508purple,
button.btn_2508purple{
width:100%; /* 各htmlで横幅はサイズ設定 */
box-sizing: border-box; /* ※ border や padding を含めて幅計算させたい場合 */
padding:20px 5px;

border:5px solid #f1f1f1;
border-radius: 2px;

text-align:center;
vertical-align:middle;

font-size:clamp(10px,6vw,18px);
font-weight: bold;
color: #1c355c;
background-color:#d7ebff;
text-decoration: none;cursor: pointer;
line-height: 1.2;

  position: relative;
  display: inline-block;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  }

a.btn_2508purple:hover {
  color: #1c355c;
  background: #d7ebff;
  }
  
  




/* *上記は全表示サイズ共通*****PC tablet sp　全体にかかる設定****************************************************************************************************************** */


/* ****pc_only start****************************************************************************************************************************** */
@media only screen and (min-width:960px){
  .price_wrapper_wrapper {
    position:relative;
    width:100%;
    padding:30px 20px; /* 外枠の余白 */
    background-color:#D7F0FA; /* 水色全面 */
    text-align:left;
  }

  .price_wrapper { /* 白い部分 */
    width:100%;
    margin:0 auto;        /* 中央寄せ（必要なら） */
    padding:20px 15px 30px 15px;/* 白い部分 のpadding余白 */
    background-color:#FFF;
    border-radius:10px;
    overflow:hidden;
  }

  
  .price_wrapper_wrapper-pctablet {
    position:relative;
    width:100%;
    padding:30px 20px; /* 外枠の余白 */
    background-color:#D7F0FA; /* 水色全面 */
    text-align:left;
  }

  .price_wrapper-pctablet { /* 白い部分 */
    width:100%;
    margin:0 auto;        /* 中央寄せ（必要なら） */
    padding:20px 15px 30px 15px;/* 白い部分 のpadding余白 */
    background-color:#FFF;
    border-radius:10px;
    overflow:hidden;
  }
	

	

}
/* *******************pc_only_end*************************************************************************************************************** */



/* *******tablet start*****************************************************************************************************************************  */
@media only screen and (max-width:959px) and (min-width:751px){
  .price_wrapper_wrapper {
    position:relative;
    width:100%;
    padding:34px 17px; /* 外枠の余白 */
    background-color:#D7F0FA; /* 水色全面 */
    text-align:left;
  }

  .price_wrapper { /* 白い部分 */
    width:100%;
    margin:0 auto;        /* 中央寄せ（必要なら） */
    padding:20px 15px 1em 15px;
    background-color:#FFF;
    border-radius:10px;
    overflow:hidden;
  }


  .price_wrapper_wrapper-pctablet {
    position:relative;
    width:100%;
    padding:34px 17px; /* 外枠の余白 */
    background-color:#D7F0FA; /* 水色全面 */
    text-align:left;
  }

  .price_wrapper-pctablet { /* 白い部分 */
    width:100%;
    margin:0 auto;        /* 中央寄せ（必要なら） */
    padding:20px 15px 1em 15px;
    background-color:#FFF;
    border-radius:10px;
    overflow:hidden;
  }

}
/* *******tablet end*********************************************************************************************************************************  */





/*  ********smartphone only start*********************************************************************************************************************************   */
@media only screen and (max-width:750px){
.contents-pc40-sp78-ver2508
{	overflow: hidden;
	width: 78%;
    margin: 0 auto;
}


	/*****************************
	sp
	*****************************/
	
	.price_wrapper_wrapper {
		position:relative;
		width:100%;
		padding:2em 17px ;　/**水色部分**/
		background-color:#D7F0FA;
		text-align:left;
	}
	
	.price_wrapper {/**白い部分**/
		
		width:100%;
		padding:20px 15px 1em 15px !important;
		
		overflow:hidden;
		
		background-color:#FFF;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		border-radius: 10px;
	}



#footer_nav_sp {
    padding: 0 11px;
    display: flex;
    flex-wrap: wrap;
    gap: 1px;
}

/* 共通ボタンスタイル */
#footer_nav_sp a {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 60px;
    padding: 6px;
    background-color: #F1F1F1;
    border-radius: 5px;
    border: 1px solid #83cde8;
    text-align: center;
    font-size: clamp(14px,2.1vw,20px);
    color: #666;
    box-sizing: border-box;
}

/* 1列専用 */
.footer_nav_1 a {
    width: 100%;
}

/* 2列専用 */
.footer_nav_2 {
    display: flex;
    gap: 1px;
}

/* .footer_nav_2内の a 要素を2等分にする */
.footer_nav_2 a {
    flex: 1 1 48%; /*flex-grow: 1  flex-shrink: 1 flex-basis: 48% の意味。幅は約48%、残りの4%は gap や border で調整 */
/*各ボタンの 基準サイズは幅48%
親が小さすぎると → 48%から縮む（flex-shrink: 1）
親に余裕があると → 48%から広がる（flex-grow: 1）
結果 → 2つのボタンが均等に並び、gapぶんの余白を残してちょうど収まる*/
}


}
/*  ********smartphone only end*********************************************************************************************************************************   */








/* ******************************** */
@media only screen and (min-width:581px) and (max-width:960px){


}


