@charset "utf-8";

/* common
---------------------------------------------*/
* {margin:0;padding:0;}

a:link,a:visited {
	color: #ffffff;
	text-decoration:underline;
}
a:hover,a:active {
	color: #d90909;
	text-decoration:underline;
}

.impact   {font-size:20pt; font-weight:bold;}
.impact2  {color:red;}
.impact3  {background:yellow; color:#000;}
#impact4  {underline;}
.impact5  {background:#173B50; padding:2px 5px; color:#fff;}
.impact6  {background:#f4f4f4; padding:3px; line-height:1.1;}
.impact7  {background: #B60000; padding:2px 5px; color:#fff;}
.style2   {color: #FF0000}
.style3   {color: #333333}
.style4   {color: #000000}


img{ border: none;}

/* ボタンのマウスオーバーで明るくする */
.btn:hover {
  filter: brightness(120%);
}


/* animation
---------------------------------------------*/
.feedInUp {
	opacity: 0;
	transform: translate(0,30px); 
	-webkit-transform: translate(0,30px); 
	transition: 1.5s;
}
.feedInUp_On {
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}

/* layout
---------------------------------------------*/


/*TopIntro-Start*/
body {
	width: 100%;
	height: 100%;
	margin: 0px;
	padding: 0px;
	min-width: 1102px;
	
  background-image: url(../images/bg.jpg);
	background-repeat: repeat;
	background-attachment: fixed;
	background-position: top center;
	
-webkit-text-size-adjust:none;
	
  text-align:center;
  font-size:18px;
  font-family: 'meiryo', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    color: #383d5c;
}

#head1 { background: url("../images/header_01.webp") no-repeat top center; height:    1817px; } 
#head2 { background: url("../images/header_02.webp") no-repeat top center; height:    437px; } 
#head3 { background: url("../images/header_03_02.webp") no-repeat top center; height:    4557px; } 
#head4 { background: url("../images/header_04.webp") no-repeat top center; height:    1189px; } 
#head5 { background: url("../images/header_05_03.webp") no-repeat top center; height:  862px; } 
#head6 { background: url("../images/header_06.webp") no-repeat top center; height:  3110px; } 
#head7 { background: url("../images/header_07.webp") no-repeat top center; height:    2625px; } 
#head8 { background: url("../images/header_08_01.webp") no-repeat top center; height:   3775px; } 
#head9 { background: url("../images/header_09_02.webp") no-repeat top center; height:   3364px; }
#head10_2 { background: url("../images/header_10.webp") no-repeat top center; height:    4116px; } 

#head11{ background: url("../images/header_11.webp") no-repeat top center; height:    3253px; } 
#head12{ background: url("../images/header_12.webp") no-repeat top center; height:    2954px; } 
#head13{ background: url("../images/header_13.webp") no-repeat top center; height:   4158px; } 
#head14{ background: url("../images/header_14.webp") no-repeat top center; height:    2677px; } 
#head15{ background: url("../images/header_15.webp") no-repeat top center; height:    2800px; } 
#head16{ background: url("../images/header_16.webp") no-repeat top center; height:   398px; } 
#head17{ background: url("../images/header_17.webp") no-repeat top center; height:    1973px; } 
#head18{ background: url("../images/header_18.webp") no-repeat top center; height:    4186px; } 
#head19{ background: url("../images/header_19.webp") no-repeat top center; height:  517px; } 

#form { background: url("../images/header_02.webp") no-repeat top center; height:    280px; } 
#form1 { background: url("../images/form1.webp") no-repeat top center; height:    260px; } 
#form2 { background: url("../images/form2.webp") no-repeat top center; height:    300x; } 
#form3 { background: url("../images/form3.webp") no-repeat top center; height:    300px; } 
#form4 { background: url("../images/form4.webp") no-repeat top center; height:    300px; } 
#form5 { background: url("../images/form5.webp") no-repeat top center; height:    300px; } 
#form6 { background: url("../images/form6.webp") no-repeat top center; height:    300px; } 
#form7 { background: url("../images/form7.webp") no-repeat top center; height:   300px; } 
#form8 { background: url("../images/form8.webp") no-repeat top center; height:    396px; } 

.fixed-bottom-button {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1000;
  text-align: center;
}

.fixed-bottom-button img {
  width: 80vw;
  max-width: 400px;
  height: auto;
  display: block;
}

#wrap {

	background-image: url("../images/wrap.webp");
	background-repeat: repeat-y;
	background-position: center top;
	background-position:50% 0%;
}

#wrapform {

	background-image: url("../images/wrapform.webp");
	background-repeat: repeat-y;
	background-position: center top;
	background-position:50% 0%;
}


#container {

	text-align:left;
	width:1000px;
	margin:0 auto;
	
	
}

#text {

	text-align:left;
	width:850px;
	margin:0 auto;
	
	
}

#textwhite {

	text-align:left;
	width:850px;
	margin:0 auto;
	color: #fff;
	
}

#texts2 {

	text-align:left;
	width:750px;
	position: relative;
	margin-top:170px;
	margin-left:400px;
	
	
}

#texts3 {

	text-align:left;
	width:850px;
	margin-top:250px;
	margin-left:170px;
	
	
}


.container {

	text-align:left;
	width:1200px;
	margin:0 auto;
	
	
}

.white {
  color: #fff;
}

.text-center {
　text-align: center;
}

#footer {  
	background-color: #0070bd;
}
--------------------------- */

ol,
ul{
	list-style-position: inside;
	padding-left:10px;
}
ol li,
ul li{
	text-align:left;
}




@media screen and (min-width: 1025px) {
  .header-container {
    width: 100%;
    max-width: 550px; /* PCで横幅550pxに固定 */
    margin: 0 auto; /* 中央寄せ */
  }

  .header-image {
    width: 100%;
    max-width: 550px; /* 横幅550pxに固定 */
    height: auto; /* 高さはアスペクト比を保ちながら調整 */
    display: block;/* 画像がインライン要素の場合、widthが正しく適用されないことがあるため追加 */
    margin-bottom: -1px;
  }

  .header-container > div[id^="form"] { /* #formで始まるidを持つ直下のdiv要素 */
    width: 100%;
    max-width: 550px;
    margin: 0 auto; /* 必要に応じて中央寄せ */
    text-align: center; /* ボタンを中央に配置するため追加 */
  }

  .header-container > div[id^="form"] > div { /* #form内のcontainer */
    width: 100%;
    max-width: 550px;
    margin: 0 auto; /* 必要に応じて中央寄せ */
    text-align: center; /* ボタンを中央に配置するため追加 */
  }

  .header-container > div[id^="form"] > div > div { /* text-align: center; を持つdiv */
    width: 100%;
    max-width: 550px;
    margin: 0 auto; /* 必要に応じて中央寄せ */
    text-align: center; /* ボタンを中央に配置するため追加 */
  }

  .header-container > div[id^="form"] > div > div > a { /* ボタンを囲むaタグ */
    display: inline-block; /* インラインブロック要素に変更 */
    /* width: 100%; 不要 */
    max-width: 80%; /* ボタンの最大幅を調整（例：80%） */
    margin: 10px auto; /* 上下のマージンと左右中央寄せ */
  }

  .header-container > div[id^="form"] > div > div > a > img.btn { /* ボタン画像 */
    display: block; /* 画像もブロック要素にする */
    width: 100%; /* 親要素（aタグ）の幅に合わせる */
    height: auto;
  }
 .header-container > div[id^="form"] { /* #formで始まるidを持つ直下のdiv要素 */
    width: 100%;
    max-width: 550px;
    margin: 0 auto; /* 必要に応じて中央寄せ */
    text-align: center; /* ボタンを中央に配置するため追加 */
    height: 150px; /* PCで見たときだけformの高さを300pxに */
  }
    

  /* #form などの直下の a タグ */
  #form a,
  #form1 a,
  #form2 a,
  #form3 a,
  #form4 a,
  #form5 a,
  #form6 a,
  #form7 a,
  #form8 a {
    display: inline-block; /* インラインブロックに戻す */
    width: auto; /* 幅を自動調整 */
    max-width: 500px; /* ボタンの最大幅を設定 (適宜調整) */
    margin: 10px auto; /* 上下のマージンと左右中央寄せ */
  }
    

  /* #form などの直下の img.btn */
  #form img.btn,
  #form1 img.btn,
  #form2 img.btn,
  #form3 img.btn,
  #form4 img.btn,
  #form5 img.btn,
  #form6 img.btn,
  #form7 img.btn,
  #form8 img.btn {
    display: block;
    width: 100%; /* 親要素（<a>タグ）の幅に合わせる */
    height: auto;
  }
    
}


/* スマホ向け（柔軟に対応） */
@media screen and (max-width: 1024px) {
  .header-container {
    width: 100%; /* スマホでは幅100%に変更 */
    max-width: none;
    margin: 0;
  }

  .header-image {
    width: 100%; /* 幅100%で表示 */
    max-width: none;
    height: auto; /* 高さはアスペクト比を保ちながら調整 */
    display: block; /* 画像がインライン要素の場合、widthが正しく適用されないことがあるため追加 */
    margin-bottom: -1px;
  }

  .header-container > div[id^="form"] {
    text-align: center; /* ボタンを中央に配置するため追加 */
  }

  .header-container > div[id^="form"] > div {
    text-align: center; /* ボタンを中央に配置するため追加 */
  }

  .header-container > div[id^="form"] > div > div {
    text-align: center; /* ボタンを中央に配置するため追加 */
  }

  .header-container > div[id^="form"] > div > div > a {
    display: block;
    width: 100%; /* ボタンの幅を調整（例：80%） */
    max-width: 950px; /* ボタンの最大幅を調整 */
    margin: 10px auto; /* 上下のマージンと左右中央寄せ */
  }

  .header-container > div[id^="form"] > div > div > a > img.btn {
    display: block;
    width: 100%;
    height: auto;
  }
   .fixed-bottom-button {
    position: fixed;
    bottom: 20px;
    left: 0; /* 左端に配置 */
    right: 0; /* 右端に配置 */
    transform: translateX(0); /* transform をリセット */
    margin-left: auto; /* 左右のマージンを auto にして中央寄せ */
    margin-right: auto;
    z-index: 1000;
    text-align: center;
    width: 95vw;
    max-width: 600px;
  }

  .fixed-bottom-button img {
    width: 100%;
    height: auto;
    display: block;
  }
    }
 

  