

/*=================================
　fadein
===================================*/

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}


/*===================================================
画面の横幅サイズを基準に、画像サイズを自動で合わせる方法は簡単
===================================================*/

.center {
   max-width: 800px; /* 最大幅 */
   min-width: 310px; /* 最小幅 */
}
.center img { width: 100%; }



/*=================================
画面下部からボタンを出す
7.7 update 追加
===================================*/

.float-button__wrap {
    width: 140px;
    height: 140px;
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 10;
}


.float-button__wrap a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background-color: #fb8500 ;
    color: #fff;
    letter-spacing: 0rem;
    font-size: 0.8rem;
    font-weight: 600;
    padding:10px;
    border-radius: 50%
}


.float-button__wrap :hover {
  background-color: #005db2;
  border-radius: 50%;
}

/*=================================
top main visual
===================================*/

/*にボタンを配置*/

.box{
  position: relative;
}
.center {
  position: absolute;
  top: 65%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.center-2 {
  position: absolute;
  top: 68%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
}

.center-3 {
  position: absolute;
  top: 61%;
  left: 50%;
  transform: translate(-50%, -50%);
  width:55px;
  height:55px;
}

img.lp_btn_top{
  width: 38%;
}

img.lp_btn_top-hover{
  width: 38%;
} 

.fixed_btn
{
  position: fixed;
  bottom: 10px; 
  right: 10px;
  padding: 6px 40px;
}


/*吹き出し付きコピー*/

/*h1*/
.main-title {
  position: absolute;
  top: 40%;
  left: 50%;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: 0.2rem;
  margin-top:10px;
  transform: translate(-50%, -50%);/*translate(-50%, -50%);*/
  min-width: 100%;
}

/*h2*/
.main-title-2.balloon5 {
    position: absolute;
    top: 18%;
    left: 50%;
    color:#fff;
    font-weight: 600;
    letter-spacing: 0.12rem;
    transform: translate(-50%, -50%);
}

/*サブタイトル*/
.sub-title {
    position: absolute;
    top: 55%;
    left: 50%;
    color: #fff;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.2rem;
    transform: translate(-50%, -50%);
    min-width: 100%;
    text-align: center;
}


/*メディア別文字サイズ*/

@media only screen and (max-width: 960px) {
  .main-title {
    font-size: 1.8rem;
  }
}

@media only screen and (max-width: 600px) {
  .main-title {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 500px) {
  .main-title {
    font-size: 1.3rem;
  }
}

@media only screen and (max-width: 400px) {
  .main-title {
    font-size: 1rem;
    letter-spacing: 0.1rem;
    margin-top:0.5rem;
  }
}

/*=================================
ホバー
===================================*/


/*画像ボタン 半透明*/

a:hover img {
  opacity: 0.3;
  color: #000;
  filter: alpha(opacity=60);
}*

/*=================================
　見出し
===================================*/

h1 {
  font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
  font-weight: 900;
  font-style: normal;
  letter-spacing: 0.1rem;
  font-size: 32px;
}


h2 {
  font-weight: 600;
  letter-spacing: 0.1rem;
  font-size: 20px;
}

h3 { 
  font-weight: 600;
  letter-spacing: 0.1rem;
  font-size: 22px;
}

h5 {
  font-weight: 600;
  letter-spacing: 0.1rem;
  padding: 8px;
  font-size: 18px;
}

h4 {
  font-weight: 500;
}

h6 {
  font-weight: 500;
  letter-spacing: 0.1rem;
  padding: 0px;
}

h7 {  font-weight: 600;
  letter-spacing: 0.1rem;
  font-size: 22px;
  position: relative;
  padding: 0 65px;
  text-align: center;
}

h7:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 2px;
  content: '';
  background: #000;
}

h7 span {
  position: relative;
  padding: 0 1em;
  background: #fff;
}


/*=================================
テキスト(本文etc)
===================================*/


.p-00 {
    font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
    letter-spacing: 0.1rem;
    font-size: 12px;
    margin: 0px 0px;   /* 上下に0px・左右に0px */
}

.p-01 {
    font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
    letter-spacing: 0.1rem;
    font-size: 14px;
    margin: 0px 0px;   /* 上下に0px・左右に0px */
}

.p-02 {
    font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
    letter-spacing: 0.1rem;
    font-weight: 400;
    font-size: 14px;
    margin: 0px 0px;   /* 上下に0px・左右に0px */
}

.p-03 {
    font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
    letter-spacing: 0.1rem;
    font-weight: 600;
    font-size: 14px;
    margin: 0px 0px;   /* 上下に0px・左右に0px */
}

.p-link {
    font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
    letter-spacing: 0.1rem;
    font-size: 12px;
    margin: 0px 0px;   /* 上下に0px・左右に0px */
}


.list {
  font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
  font-weight: 600;
  font-size: 18px;
}


.lead {
  font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
  font-weight: 400;
  font-size: 18px;
  margin-bottom: 0px;
  letter-spacing: 0.15rem;
}

.lead-1 {
  font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
  font-weight: 400;
  font-size: 16px;
  margin-bottom: 0px;
  letter-spacing: 0.1rem;
}

.lead-2 {
  font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
  font-size: 2vw;
  font-weight: 300;
}

.lead-3 {
  line-height: 30px;
  letter-spacing: 0.15rem;
}

.lead-4 {
  font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
  font-weight: 400;
  font-size: 14px;
  margin-bottom: 0;
  letter-spacing: 0.1rem;
}

.user {
    font-family: Noto Sans JP, sans-serif;
    font-weight: 400;
    color: #fff;
    letter-spacing: 0.1rem;
    font-size: 13px;
}


/*=================================
　テキストの色
===================================*/
.font-white
{
  color: #fff;
}
/*=================================
　画像レスポンシブ
===================================*/

.img-responsive {
  display: block;
  height: auto;
  max-width: 100%;
}

/*=================================
　装飾
===================================*/

/*アンダーバー 黄色*/

.underbar-yl {
background:linear-gradient(transparent 60%, #FFB703 0%);
}

/*アンダーバー オレンジ*/

.underbar-org {
background:linear-gradient(transparent 60%, #fb8500 0%);
}

/*数字ブルー*/

.circle_number {
  width: 50px;
  height: 50px;
  padding-top: 13px;
  background-color: #005DB2;
  color: #fff;
  border-radius: 50%;
  text-align: center;
  box-sizing: border-box;
  font-weight: 700;
  position: relative; /* 今の位置を基準 */
  bottom: 38px; /* 下から10px */
  left: 0px; /* 左から20px */
}

/*数字オレンジ*/

.circle_number_org {
  width: 50px;
  height: 50px;
  padding-top: 13px;
  background-color: #FB8500;
  color: #fff;
  border-radius: 50%;
  text-align: center;
  box-sizing: border-box;
  font-weight: 700;
  position: relative; /* 今の位置を基準 */
  bottom: 25px; /* 下から10px */
  left: 0px; /* 左から20px */
}

/*数字グレー*/

.circle_number_gry {
  width: 50px;
  height: 50px;
  padding-top: 13px;
  background-color: #333;
  color: #fff;
  border-radius: 50%;
  text-align: center;
  box-sizing: border-box;
  font-weight: 700;
  position: relative; /* 今の位置を基準 */
  bottom: 25px; /* 下から10px */
  left: 0px; /* 左から20px */
}


/*=================================
吹き出し
==================================*/
/*赤*/
.balloon1 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 15px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  background: #e50017;
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #e50017;
}

/*ブルー*/
.balloon2 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 15px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  background: #005DB2;
}

.balloon2:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #005DB2;
}

.balloon1 p {
  margin: 0;
  padding: 0;
}

/*オレンジー*/
.balloon2 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 15px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  background: #FB8500;
}

.balloon2:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #FB8500;
}

.balloon2 p {
  margin: 0;
  padding: 0;
}


/*白い吹きだし*/
.balloon3 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 15px;
  min-width: 120px;
  max-width: 100%;
  color: #005DB2;
  background: #fff;
}

.balloon3:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #fff;
}

.balloon3 p {
  margin: 0;
  padding: 0;
}


/*ドットの吹き出し*/
.balloon4 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 15px 15px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  background-color: #fff;
  background-image:
  radial-gradient(#005DB2 20%, transparent 2%);
  background-size: 4px 4px;
  border-radius: 20px;
  border: 4px solid;
  border-color: #005DB2;
}

.balloon4:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #005DB2;
}

.balloon4 p {
  margin: 0;
  padding: 0;
}

/*白い線の吹き出し*/

.balloon5 {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 15px 15px;
  min-width: 120px;
  max-width: 100%;
  /*color: ;*/
  /*background-color: #fff;*/
  /*background-image:
  radial-gradient(#005DB2 20%, transparent 2%);*/
  /*background-size: 4px 4px;*/
  border-radius: 5px;
  border: 4px solid;
  border-color: #fff;
}

.balloon5:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #fff;
}

.balloon5 p {
  margin: 0;
  padding: 0;
}

/*=================================
　背景色
===================================*/

.bg_red {
background-color: #e50017;
}

.bg_white {
background-color: #ffffff;
}

.bg_green {
background-color: #00aa83;
}

.bg_beige {
background-color: #FAF9F4;
}

.bg_blue {
 background-color: #005DB2;
}

.bg_dark-gray {
 background-color: #333333;
}

.bg_orange {
  background-color: #FB8500;
}

.bg_yellow {
  background-color: #FFB703;
}

.bg_ligth-gray {
  background-color: #f5f3f4;
}

/*=================================
　背景ドット
===================================*/

 .bg_dot_yl{
  background-color: #fff;
  background-image:
    radial-gradient(#fdd023 25%, transparent 2%);
  background-size: 6px 6px;
}
/*黄色　#FDD023 #fdd023*/

 .bg_dot_red{
  background-color: #fff;
  background-image:
 radial-gradient(#e50017 20%, transparent 2%);
  background-size: 6px 6px;
}

 .bg_dot_green{
  background-color: #fff;
  background-image:
 radial-gradient(#00aa83 20%, transparent 2%);
  background-size: 6px 6px;
}


/*=================================
　背景ベタ
===================================*/

.bg_navy{
  background-color: #001428;
}

.bg_red{
  background-color: #e50017;
}

.bg_green{
  background-color: #00aa83;
}


/*=================================
　ボーダー
===================================*/
.border_orange{
  border: 2px solid #FB8500;
  background-color: #ffffff;
}

.border_blue {
  border: 2px solid #005DB2;
  background-color: #ffffff;
}

.border_gray {
  border: 1px solid #adb5bd;
  background-color: #ffffff;
  border-radius: 5px;
}

.border_brack{
  border: 1px solid #666;
  background-color: #ffffff;
  border-radius: 5px;
}
/*=================================
　ボタン
===================================*/

/*丸矢印*/

.round_arrow {
  position: relative;
  padding-left: 30px;
}
 
.round_arrow::before { /* 背景の表示設定 */
  content: "";
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 2px;
  width: 32px; /* 横幅 */
  height: 32px; /* 高さ */
  border-radius: 50%; /* 角の丸み */
  background: #FB8500;
}
 
.round_arrow::after { /* くの字の表示設定 */
  content: "";
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  left: 10px;
  width: 10px;
  height: 10px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
}

/*オレンジボタン-01*/
a.btn--orange {
  color: #fff;
  background-color: #FB8500;
  border-bottom: 5px solid #b84c00;
  font-weight: 600;
  font-size: 15spx;
  letter-spacing: 0.1rem;
  padding:12px;
}
a.btn--orange:hover {
  margin-top: 3px;
  color: #fff;
  background: #eb6100;
  border-bottom: 1px solid #b84c00;
}



/*オレンジボタン-02 大きいサイズ*/

a.btn--orange02 {
  color: #fff;
  background-color: #FB8500;
  border-bottom: 5px solid #b84c00;
  font-weight: 600;
  font-size: 17px;
  letter-spacing: 0.05rem;
  padding:12px;
}

a.btn--orange02:hover {
  margin-top: 3px;
  color: #fff;
  background: #eb6100;
  border-bottom: 1px solid #b84c00;
}

/*ブルーボタン-01*/
a.btn--blue {
  color: #fff;
  background-color: #005DB2;
  border-bottom: 5px solid #0045a5;
  font-weight: 600;
  font-size: 15spx;
  letter-spacing: 0.1rem;
  padding:12px;
}
a.btn--oblue:hover {
  margin-top: 3px;
  color: #fff;
  background: #0045a5;
  border-bottom: 1px solid #0045a5;
}

/*ブルーボタン 大きいサイズ*/
a.btn--blue-big {
  color: #fff;
  background-color: #005DB2;
  border-bottom: 5px solid #0045a5;
  font-weight: 600;
  font-size: 20px;
  letter-spacing: 0.15rem;
  padding:25px;
  margin:25px;
}
a.btn--blue-big:hover {
  margin-top: 3px;
  color: #fff;
  background: #0045a5;
  border-bottom: 1px solid #0045a5;
}


/*ボタン円形*/
a.btn--radius {
  border-radius: 100vh;
}

/*ボタン陰 オレンジ*/
a.btn--shadow {
  -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
  box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
}

/*ボタン陰 ブルー*/

a.btn--shadow--blue {
  -webkit-box-shadow: 0 3px 5px rgba(0, 69, 165, .3);
  box-shadow: 0 3px 5px rgba(0, 69, 165, .3);
}


/*=================================
アコーディオン
===================================*/


.toggle {
display: none;
}
.option {
position: relative;
margin-bottom: 0em;
}

.title,
.content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.title {
border: solid 2px #f5f3f4;
padding: 1em;
display: block;
color: #333;
font-weight: 700;
background-color: #fff;
}
.title::after,
.title::before {
content: "";
position: absolute;
right: 1.25em;
top: 1.25em;
width: 2px;
height: 0.75em;
background-color: #333;
transition: all 0.3s;
}
.title::after {
transform: rotate(90deg);
}
.content {
max-height: 0;
overflow: hidden;
}
.content p {
margin: 0;
padding: 0.5em 1em 1em;
/*font-size: 0.9em;*/
line-height: 1.5;
}
.toggle:checked + .title + .content {
max-height: 500px;
transition: all 1.5s;
}
.toggle:checked + .title::before {
transform: rotate(90deg) !important;
}

/*=================================
　メディア別の設定
===================================*/

/*500px以下では改行が無効*/
@media only screen and (max-width: 500px) {
  .text br {
    display: none;
  }
}

/*iPad以上のサイズのデバイスでは改行が無効*/
@media screen and (min-width: 680px){
.br-sp {display: none; }
}


/*=================================
　inner
===================================*/

.inner {
  width: 960px; /* 好きな幅 */
  max-width: 100%;
  margin: 0 auto;
  padding: 24px;
}


/*=================================
　下部のインフォ
===================================*/

.info {
  position: sticky;
  bottom: 0;
  width: 100%;
  text-align: center;
  background-color: #fff;
}

.box1 {
  background-color: #fff;
  opacity: 0.5;
}

.font_info {
  font-family: century-gothic, Century Gothic pro, Noto Sans JP, sans-serif;
  font-weight: 600;
  font-size: 23px;
  color:  #e50017;
  margin-bottom: 0px;
  letter-spacing: 0.15rem;
}

/*=================================
　リスト
===================================*/
