@charset "utf-8";

/* ---------------------------------------------------
 * base
/* ---------------------------------------------------*/

html {
    font-size: 62.5%;	/*適宜変更お願いします*/
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 18px;
    line-height: 2em;
    text-align: center;
    padding: 0;
    width: 100%;
    background-color: #fff;
    font-weight: 400;	/*適宜変更お願いします*/
    font-feature-settings: "palt" 1;	/*自動カーニング*/
}
/*テキスト装飾*//*テキスト装飾*//*テキスト装飾*/

.bold{
    font-weight: bold;
}
.bold_b{
   font-weight: bold;
    font-size: 1.5em;
}
/*黄色マーカー*/
.y_ma{
   background-color: yellow;
    padding: 3px;
}
/*赤文字*/
.red{
  color:#cc0a0a;   
}

.center p{
    text-align: center !important;
    margin: 2em !important;
}
.center{
    position: relative;
     display: inline-block;
  padding: 0 35px;
}
.center:before,
.center:after {
  position: absolute;
  top: calc(50% - 3px);
  width: 50px;
  height: 6px;
  content: '';
  border-top: solid 2px #000;
  border-bottom: solid 2px #000;
}

.center:before {
  left: 0;
}

.center:after {
  right: 0;
}
/*テキスト装飾*//*テキスト装飾*//*テキスト装飾*/
img {
    max-width: 100%;
    height: auto;
}

a {
    color: #000;
}

a:hover {
    /*opacity: 0.8;*/
    text-decoration: none;
}

p {
    text-align: justify;
    hanging-punctuation: allow-end;	/*文字のぶら下げ*/
}

#footer {
	text-align: center;
    background-color: #122341;
    overflow: hidden;
    color: #fff;
    padding: 1em;
}
#footer a{
	color: #fff;
}
/* ---------------------------------------------------
 * common（PC　min-width: 1023px）
/* ---------------------------------------------------*/
.wrap {
	width: 2000px;
	max-width: 100%;
}

#container {
    position: relative;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
}


.text_box{
   max-width: 900px;
    width:100%;
    padding:2em;
    margin: auto;
}

.text_box p{
    margin:1em;
    line-height: 2em;
}
.tyousei{
    margin-top: -41px;
}
.syouritu{
    position: relative !important;
    z-index: 9999 !important;
}

/*見出し*/

h2{
    position: relative;
    z-index: 999;
   line-height: 1.5;
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    background-color: #fff;
    border: solid 2px #003e70;
    padding: 0.7em 0.2em;
    color:#122341;
    font-size:2.1em;
    font-family:"游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

/*h2:before {
  position: absolute;
  top: 7px;
  left: 7px;
  width: 100%;
  height: 100%;
  content: '';
  border: 2px solid #122341;
}
section#section-10 h2,
section#section-15 h2{
   background-color: #fff; 
    color:#343E49;
}
section#section-10 h2:before,
section#section-15 h2:before{
    border: 2px solid #fff;
}
/*白背景枠*/
.w_bg{
    background-color: #fff;
    color:#343E49;
    overflow: hidden;
}
.w_bg_2{
    background-color:rgba(255,255,255,0.92);
    color:#000;
    overflow: hidden;
    padding: 1.5em;
}

.flex_box{
    display: flex;
}
.flex_box{
    
}
/*見出し2_画面幅MAX

h2{
   line-height: 1.5;
    margin-bottom: 1.5em;
    background-color: #000;
    color:#fff;
    padding: 0.5em;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    
}

*/
/*テキストボックス*/
section#section-07 .text_box{

    z-index: 99999;
    position: relative;
}


/*背景画像を指定*/
section#section-01 {
	background:url(../img_pc/section_01.webp)no-repeat top center;
    height: px;  
}
section#section-02 {
	background:url(../img_pc/section_02.webp)no-repeat top center;
    height: px;  
}
section#section-03 {
	background:url(../img_pc/section_03.webp)no-repeat top center;
    height: px;  
}
section#section-04 {
	background:url(../img_pc/section_04.webp)no-repeat top center;
    height: px;  
}
section#section-05 {
	background:url(../img_pc/section_05.webp)no-repeat top center;
    height: px;  
}
section#section-06 {
	background:url(../img_pc/section_06.webp)no-repeat top center;
    height: px;  
}
section#section-07 {
	background:url(../img_pc/section_07.webp)no-repeat top center;
    height: px;  
}
section#section-08 {
	background:url(../img_pc/section_08.webp)#003e70 no-repeat top center;
    height: px;  
}
section#section-08 .text_box{
    color: #fff;
}
section#section-09 {
	background:url(../img_pc/section_09.webp)no-repeat top center;
    height: px;  
}
section#section-10{
  background:url(../img_pc/bg_01.webp)center; background-attachment: fixed;
    background-size:cover;
}



/*背景画像を指定*/
section#section-11 {
	background:url(../img_pc/section_11.webp)no-repeat top center;
    height: px;  
}
section#section-12 {
	background:url(../img_pc/section_12.webp)no-repeat top center;
    height: px;  
}
section#section-13 {
	background:url(../img_pc/section_13.webp)no-repeat top center;
    height: px;  
}
section#section-14 {
	background:url(../img_pc/section_14.webp)no-repeat top center;
    height: px;  
}
section#section-15 {
      position: relative;

}

section#section-15:after {
  position: absolute;
    z-index: 999;
  bottom: -33px;
  left: 0;
    right:0;
    margin: auto;
  width: 0;
  height: 0;
  content: '';
  border-width: 34px 82px 0 82px;
  border-style: solid;
  border-color: #f6f8fa transparent transparent transparent;
}

section#section-16 {
	background:url(../img_pc/section_16.webp)no-repeat top center;
    height: px;  
}
section#section-17 {
	background:url(../img_pc/section_17.webp)no-repeat top center;
    height: px;  
}
section#section-18 {
	background:url(../img_pc/section_18.webp)no-repeat top center;
    height: px;  
}
section#section-19 {
	background:url(../img_pc/section_19.webp)no-repeat top center;
    height: px;  
}
section#section-20 {
	background:url(../img_pc/section_20.webp)no-repeat top center;
    height: px;  
}

/*背景画像を指定*/
section#section-21 {
	background:url(../img_pc/section_21.webp)no-repeat top center;
    height: px;  
}
section#section-22 {
background:url(../img_pc/section_22.webp)no-repeat top center;
    height: px;  
}
section#section-23 {
	background:url(../img_pc/section_23.webp)no-repeat top center;
    height: px;  
}
section#section-24 {
	background:url(../img_pc/section_24.webp)no-repeat top center;
    height: px;  
}
section#section-25 {
	background:url(../img_pc/section_25.webp)no-repeat top center;
    height: px;  
}
section#section-26 {
	background:url(../img_pc/section_26.webp)no-repeat top center;
    height: px;  
}
section#section-27 {
	background:url(../img_pc/section_27.webp)no-repeat top center;
    height: px;  
}
section#section-28 {
	background:url(../img_pc/section_28.webp)no-repeat top center;
    height: px;  
}
section#section-29 {
	background:url(../img_pc/section_29.webp)no-repeat top center;
    height: px;  
}
section#section-30 {
	background:url(../img_pc/section_30.webp)no-repeat top center;
    height: px;  
}


/*背景画像を指定*/
section#section-21 {
	background:url(../img_pc/section_21.webp)no-repeat top center;
    height: px;  
}

section#section-23 {
	background:url(../img_pc/section_23.webp)no-repeat top center;
    height: px;  
}
section#section-24 {
	background:url(../img_pc/section_24.webp)no-repeat top center;
    height: px;  
}
section#section-25 {
	background:url(../img_pc/section_25.webp)no-repeat top center;
    height: px;  
}
section#section-26 {
	background:url(../img_pc/section_26.webp)no-repeat top center;
    height: px;  
}
section#section-27 {
	background:url(../img_pc/section_27.webp)no-repeat top center;
    height: px;  
}
section#section-28 {
	background:url(../img_pc/section_28.webp)no-repeat top center;
    height: px;  
}
section#section-29 {
	background:url(../img_pc/section_29.webp)no-repeat top center;
    height: px;  
}
section#section-30 {
	background:url(../img_pc/section_30.webp)no-repeat top center;
    height: px;  
}


/*背景画像を指定*/
section#section-31 {
	background:url(../img_pc/section_31.webp)no-repeat top center;
    height: px;  
}
section#section-32 {
	background:url(../img_pc/section_32.webp)no-repeat top center;
    height: px;  
}
section#section-33 {
	background:url(../img_pc/section_33.webp)no-repeat top center;
    height: px;  
}
section#section-34 {
	background:url(../img_pc/section_34.webp)no-repeat top center;
    height: px;  
}
section#section-35 {
	background:url(../img_pc/section_35.webp)no-repeat top center;
    height: px;  
}
section#section-36 {
	background:url(../img_pc/section_36.webp)no-repeat top center;
    height: px;  
}
section#section-237 {
	background:url(../img_pc/section_37.webp)no-repeat top center;
    height: px;  
}
section#section-38 {
	background:url(../img_pc/section_38.webp)no-repeat top center;
    height: px;  
}
section#section-39 {
	background:url(../img_pc/section_39.webp)no-repeat top center;
    height: px;  
}
section#section-40 {
	background:url(../img_pc/section_40.webp)no-repeat top center;
    height: px;  
}


/*背景画像を指定*/
section#section-41 {
	background:url(../img_pc/section_41.webp)no-repeat top center;
    height: px;  
}
section#section-42 {
	background:url(../img_pc/section_42.webp)no-repeat top center;
    height: px;  
}
section#section-43 {
	background:url(../img_pc/section_43.webp)no-repeat top center;
    height: px;  
}
section#section-44 {
	background:url(../img_pc/section_44.webp)no-repeat top center;
    height: px;  
}
section#section-45 {
	background:url(../img_pc/section_45.webp)no-repeat top center;
    height: px;  
}
section#section-46 {
	background:url(../img_pc/section_46.webp)no-repeat top center;
    height: px;  
}
section#section-47 {
	background:url(../img_pc/section_47.webp)no-repeat top center;
    height: px;  
}
section#section-48 {
	background:url(../img_pc/section_48.webp)no-repeat top center;
    height: px;  
}
section#section-49 {
	background:url(../img_pc/section_49.webp)no-repeat top center;
    height: px;  
}
section#section-50 {
	background:url(../img_pc/section_50.webp)no-repeat top center;
    height: px;  
}

.-pc {
    display: block;
}

.-sp {
    display: none;
}

*, *::before, *::after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;	/*親要素のbox-sizingを継承*/
}

/*フォーム周り*/
.formbox{
    position: absolute;
    z-index: 999;
    width: 68%;
    margin: auto;
    left: 0;
    right:0;
    top:12%;
}
.formbox_2{
    position: absolute;
    z-index: 999;
    width: 68%;
    margin: auto;
    left: 0;
    right:0;
    top:32%;
}
input[type="text"]{
    border: solid 1px #000;
    width:100%;
    padding: 1.5em 0 1.5em 3.5em;
    font-size:1.5em;
    border-radius: 10px;
    
    background: url(../img_pc/mail_logo.webp) no-repeat 3% 50%;
}
input[type="image"]{
    animation-duration: 1.4s;
  animation-name: poyon;
  animation-iteration-count: infinite;  
}
.chusyaku p{
    margin-bottom: 0.5em;
    color:gray;
}

@keyframes poyon {
  0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
  15%  { transform: scale(0.9, 0.9) translate(0%, 5%); }
  30%  { transform: scale(1.3, 0.8) translate(0%, 10%); }
  50%  { transform: scale(0.8, 1.3) translate(0%, -10%); }
  70%  { transform: scale(1.1, 0.9) translate(0%, 5%); }
  100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}


@keyframes poyon {
  0%   { transform: scale(1.0, 1.0) translate(0%, 0%); }
  15%  { transform: scale(0.95, 0.95) translate(0%, 0%); }
  30%  { transform: scale(1.05, 1.05) translate(0%, 0%); }
  50%  { transform: scale(0.95, 0.95) translate(0%, 0%); }
  70%  { transform: scale(1.05, 1.05) translate(0%, 0%); }
  100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
}
/*スクロールボックス*/

.scrol_box_1 {
    border: double 10px #fff;
    margin: auto;
    margin-bottom: 2em;
    overflow: auto;
    width: 100%;
    height: 280px;

    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.scrol_box_2 {
    border: double 10px #fff;
    margin: auto;
    margin-bottom: 2em;
    overflow: auto;
    width: 100%;
    height: 400px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}

.scrol_box p {
    padding: 15px 20px;
    margin: 0;
}
/*ボックス*/
.box26 {
    position: relative;
    margin: 2em 0;
    padding: 2em 2em;
    border: solid 2px #003278;
    background-color: #fff;
}

.box26 p{
        background-color: #fff; /* 背景色 */
  background-image: linear-gradient(180deg, #ccc 1px, transparent 1px); /* 罫線の色と太さ  */
  background-size: 100% 2em; /* 行の高さ */
  line-height: 2em; /* 文字の高さ */
  padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -33px;
    left: 20px;
    padding: 0.3em;
    line-height: 1;
    font-size: 2em;
    background: #003278;
    color: #fff;
    font-weight: bold;
}

.prof_img{
    float: right;
    width:55%;
    margin:0 -8em 1em 1em;
}
.prof_box{
    background-color: rgba(255,255,255,0.8);
    padding: 1em;
    width: 70%;
    margin-bottom: 1em;
}
.prof_text p{
    background-color: #fff; /* 背景色 */
  background-image: linear-gradient(180deg, #ccc 1px, transparent 1px); /* 罫線の色と太さ  */
  background-size: 100% 2em; /* 行の高さ */
  line-height: 2em; /* 文字の高さ */
  padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}
.bg02{
 background:url(../img_pc/bg_02.webp)center;
background-attachment: fixed;
background-size: cover;
    overflow: hidden;
}
.bg03{
 background:url(../img_pc/bg_03.webp)no-repeat;
  background-attachment: fixed;
    background-size:cover;
 
}
.bg04{
 background:url(../img_pc/bg_04.webp)center no-repeat;
  background-attachment: fixed;
    background-size:auto;

}
.gimon{
    width: 75%;
}
.pc_prof,
.jisseki,
.book{
 width:95%;
margin-bottom: 2em;
}
h3{
  position: relative;
  display: inline-block;
  padding: 0 65px;
  text-align: center;
    font-size: 1.5em;
    margin-bottom: 1em;
}
h3:before,
h3:after {
  position: absolute;
  top: calc(50% - 3px);
  width: 50px;
  height: 6px;
  content: '';
  border-top: solid 2px #000;
  border-bottom: solid 2px #000;
}
section#section-08 h3:before,
section#section-08 h3:after {
  border-top: solid 2px #fff;
  border-bottom: solid 2px #fff;
}

h3:before {
  left: 0;
}

h3:after {
  right: 0;
}
.bored{
    width:95%;
    margin-bottom: 1em;
}

.tane_box{
    
    background-color: rgba(255,255,255,0.95);
    padding: 1em;
   
    margin-bottom: 1em;
}
.tane_box p{
    color: #000;
}
/*カウントダウンタイマー*/
.mi_countdown{
   background-color:#303030;
    padding-top: 5px;
}
.mi_countdown > .mi_countdown_inner{
    color: yellow;
    font-size: 1.5em;
    
    font-weight: bold;
}
/*カウントダウンタイマー*/
/*-----------------タブレットサイズ-----------------------
@media (min-width: 600px) and (max-width: 1023px) {
    body {
        font-size: 3.2rem;
    }
    .-pc {
        display: none;
    }
    .-sp {
        display: block;
    }
    .wrap {
        max-width: 100%;
        width: 100%;
    }
}
----------------------------------------*/

/*-----------------スマホサイズ-----------------------*/

@media screen and (max-width:600px) {
    h2{
        font-size: 1.3em;
    }
    .text_box{
        
    }
    .text_box p{
    font-size:0.9em;
    margin-right: 0.5em;
    margin-left: 0.5em;
    }
    .kaigyo{
      display: inline-block;
    }
    /*テキストボックス*/
    section#section-07 .text_box{
        margin-top: -450px;
        z-index: 99999;
        position: relative;
    }
    .-pc {
        display: none;
    }
    .-sp {
        display: block;
    }
    body {
        font-size: 4.2vw;
    }
    .wrap {
        max-width: 100%;
        width: 100%;
    }
    
    #footer {
        text-align: center;
        font-size: 0.8em;
        padding: 1em;
    }
 
    section#section-01,
    section#section-02,
    section#section-03,
    section#section-04,
    section#section-05,
    section#section-06,
    section#section-07,
    section#section-09,
    section#section-11,
    section#section-12,
    section#section-13,
    section#section-14,
    section#section-16,
    section#section-17,
    section#section-18,
    section#section-19,
    section#section-20,
    section#section-21,
    section#section-23,
    section#section-24,
    section#section-25,
    section#section-26,
    section#section-27,
    section#section-28,
    section#section-29,
    section#section-30,
    section#section-31,
    section#section-32,
    section#section-33,
    section#section-34,
    section#section-35,
    section#section-36,
    section#section-37,
    section#section-38,
    section#section-39,
    section#section-40,
    section#section-41,
    section#section-42,
    section#section-43,
    section#section-44,
    section#section-45,
    section#section-46,
    section#section-47,
    section#section-48,
    section#section-49,
    section#section-50{
    background: none !important;
  }
/*フォーム周り*/
.formbox{
    width: 92%;
    top:13%;
}

input[type="text"]{
    width:100%;
    padding: 1.5em 0 1.5em 3.5em;
    font-size:1em;
    border-radius: 5px;
    background-size: 11%;
}
input[type="image"]{
    animation-duration: 1.4s;
  animation-name: poyon;
  animation-iteration-count: infinite;  
}
.chusyaku p{
    font-size: 0.5em;
    margin-bottom: 1.5em;
}
.prof_img{
    float: none;
    width:63%;
    margin:0 1em -6em 1em;
}
.prof_box{
    position: relative;
    background-color: rgba(255,255,255,0.8);
    padding: 1em;
    width: 99%;
    margin: auto;
    margin-bottom: 1em;
    z-index: 9999;
}

.text_box{

    width:95%;
    padding:0.5em;
    margin: auto;
}

.text_box p{
    margin:1em 0.5em;
    line-height: 2em;
    font-size: 1em;
}

section#section-10{
  background:url(../img_pc/bg_01.webp); 
    background-size: cover;
}
.bg3{
 background:url(../img_pc/bg_03.webp);
background-size: cover;

}
.bg04{
 background:url(../img_pc/bg_04.webp);
background-size: cover;

}
.formbox_2{
    width:92%;
    top:38%;
}
.center{
    position: relative;
     display: inline-block;
  padding: 0 10px;
}
.center:before,
.center:after {
  position: absolute;
  top: calc(50% - 3px);
  width: 30px;
  height: 6px;
  content: '';
  border-top: solid 2px #000;
  border-bottom: solid 2px #000;
}
h2{
font-size: 1.6em;

}
.gimon{
    width: 85%;
}
.bored{
    width:95%;
    margin-bottom: 1em;
}
.box26 {
    position: relative;
    margin: 2em 0;
    padding: 1em 1em;
    border: solid 2px #003278;
    background-color: #fff;
}

.box26 p{
        background-color: #fff; /* 背景色 */
  background-image: linear-gradient(180deg, #ccc 1px, transparent 1px); /* 罫線の色と太さ  */
  background-size: 100% 2em; /* 行の高さ */
  line-height: 2em; /* 文字の高さ */
  padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -33px;
    left: 20px;
    padding: 0.3em;
    line-height: 1;
    font-size: 2em;
    background: #003278;
    color: #fff;
    font-weight: bold;
}


.scrol_box_1 {
    height: 180px;

}
.scrol_box_2 {
    border: double 10px #fff;
    margin: auto;
    margin-bottom: 2em;
    overflow: auto;
    width: 100%;
    height: 400px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
}
.tane_box{
    float: none;
    margin: auto;
    padding: 1em;
    width: 100%;
}
.tane_box p{
    color: #000;
}

section#section-08 {
background:url(../img_sp/section_in_08.webp)#003e70 no-repeat top center;
    height: px;  
}
.prof_text p{
background-color: #fff; /* 背景色 */
  background-image: linear-gradient(180deg, #ccc 1px, transparent 1px); /* 罫線の色と太さ  */
  background-size: 100% 36px; /* 行の高さ */
  line-height: 36px; /* 文字の高さ */
  padding-bottom: 1px; /* 最終行の下にも罫線を引く */
    }
 /*カウントダウンタイマー*/
    .mi_countdown > .mi_countdown_inner{
    font-size: 1.2em;
}
}
/*----------------------------------------*/
