@charset "utf-8";
/* CSS Document */
/*----------------------------------------------ページタイトル*/
.cloud_fnctitle {
  width: 100%;
  background: linear-gradient(to right, #065fe3 0, #003da3 100%);
  color: #fff;
  font-size: 20px;
  padding: 40px 0;
  font-weight: bold;
  text-align: center;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .cloud_fnctitle {
    font-size: 36px;
    padding: 120px 0 50px;
  }
}
/*----------------------------------------------ベース装飾*/
#app_dl .bg_gray {
  background: #e7edf0;
  padding-bottom: 20px;
}
#app_dl .triangle_bottom {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 50px 50px 0 50px;
  border-color: #fff transparent transparent transparent;
  margin: 0 auto;
}
[id^="sec_"] {
  margin: 0px auto;
  padding-bottom: 40px;
}
[id^="sec_"] p {
  color: #356599;
  font-size: 16px;
  margin: auto auto 10px;
  line-height: 150%;
}
@media print, screen and (min-width:768px) {
  [id^="sec_"] p {
    font-size: 18px;
  }
}
[id^="sec_"] h3 {
  background: linear-gradient(to right, #065fe3 0, #003da3 100%);
  color: #fff;
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
  margin: 0 auto 30px;
  padding: 30px 0;
}
[id^="sec_"] h4 {
  background: #003da3;
  color: #fff;
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  margin: 0 auto 20px;
  padding: 8px;
}
[id^="sec_"] h5 {
  color: #003da3;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  margin: 0 auto 20px;
  width: 100%;
}
[id^="sec_"] ul {
  margin-bottom: 0px;
}
[id^="sec_"] ul li {
  margin-bottom: 30px;
}
[id^="sec_"] ul li a:not(.nmal_a) {
  background: #fff;
  border: solid 2px #003da3;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  font-size: 16px;
  text-align: left;
  border-radius: 6px;
  padding: 30px 10px 10px;
  margin-bottom: 20px;
  color: #003da3;
  height: 100%;
}
[id^="sec_"] ul li a span {
  color: #003da3;
  margin-bottom: 5px;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  width: 100%;
  border-radius: 6px;
  padding-top: 3px;
  padding-bottom: 3px;
}
[id^="sec_"] ul li a i {
  width: 100%;
  text-align: right;
  color: #003da3;
}
[id^="sec_"] ul li a:hover {
  transform: translate(2px, 0);
  opacity: 0.9;
  transition: 0.7s;
}
[id^="sec_"] ul li a .badge {
  width: 100%;
  margin: 20px auto 0;
  text-align: center;
}
[id^="sec_"] ul li a img {
  width: 120px;
  height: 120px;
}
[id^="sec_"] ul li a img.app_ico {
  width: 80px;
  height: 80px;
}
[id^="sec_"] ul li a .badge img {
  width: 163px;
  height: auto;
}
@media print, screen and (min-width: 980px) {
  [id^="sec_"] ul li {
    margin-bottom: 20px;
  }
  [id^="sec_"] ul li a span {
    color: #003da3;
    margin-bottom: 0;
    text-align: center;
    width: 100%;
  }
}
[id^="sec_"] .comm_area {
  margin: 30px auto;
}
[id^="sec_"] p span.tx_small {
  color: #666;
  font-size: 15px;
  line-height: 100%;
}
/*----------------------------------------------------- お問い合わせボタン*/
#sec_02 .container .cnt_btn a {
  background: #fff;
  border: 2px solid #FF3366;
  border-radius: 6px;
  color: #FF3366;
  display: block;
  font-size: 20px;
  font-weight: bold;
  margin: 10px auto;
  padding: 15px 10px;
  width: 100%;
}
#sec_02 .container .cnt_btn a:hover {
  background: #FF3366;
  color: #fff;
}
@media print, screen and (min-width:768px) {
  #sec_02 .container .cnt_btn a {
    padding: 10px 10px;
    width: 40%;
  }
}
/*----------------------------------------------------- リンクボタン*/
#sec_03 .link_btn {
  padding-top: 40px;
  padding-bottom: 40px;
}
#sec_03 .link_btn a {
  display: block;
  background: #003da3;
  border: 1px solid #003da3;
  color: #fff;
  padding: 15px 10px;
  border-radius: 6px;
  font-size: 18px;
}
#sec_03 .link_btn a:hover {
  background: #fff;
  color: #003da3;
  transition: 0.7s;
}
/*----------------------------------------------セクション別*/
#app_dl #sec_01 {
  margin-top: 30px;
}
#app_dl #sec_02 .comm_area ul {
  align-items: center;
  transition: 0.7s;
}
#app_dl #sec_02 ul.app_panel li {
  animation-name: fadeoutAnime;
  animation-duration: 1s;
  opacity: 0.5;
}
@keyframes fadeoutAnime {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  70% {
    opacity: 0;
    transform: translateX(100px);
  }
  100% {
    opacity: 0.5;
    transform: translateX(0);
  }
}
#app_dl #sec_02 ul.app_panel li.is-animated:nth-child(1) {
  animation-name: fadeUpAnime;
  animation-duration: 0.7s;
  animation-fill-mode: forwards;
  opacity: 0;
}
#app_dl #sec_02 ul.app_panel li.is-animated:nth-child(2) {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0;
}
#app_dl #sec_02 ul.app_panel li.is-animated:nth-child(3) {
  animation-name: fadeUpAnime;
  animation-duration: 1.3s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateX(100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
#app_dl #sec_03 {
  padding-bottom: 0;
}
#app_dl #sec_03 h3 {
  background: #a32410;
}
#app_dl #sec_04 h3 {
  background: #405704;
}
#app_dl #sec_03 h4 {
  background: #a32410;
}
#app_dl #sec_04 h4 {
  background: #405704;
}
#anc_btn li a {
  display: block;
  color: #fff;
  padding: 15px 10px;
  border-radius: 6px;
  margin-bottom: 20px;
  font-size: 18px;
}
#anc_btn li a:after {
  content: "";
  display: block;
  position: absolute;
  top: 45%;
  margin-top: -0.5em;
  left: 88%;
  width: 0.5em;
  height: 0.5em;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid #fff;
}
.tx_ipn {
  font-weight: bold;
  font-size: 1.2em;
  color: #ffa5c4;
}
.tx_ard {
  font-weight: bold;
  font-size: 1.2em;
  color: #80ff8c;
}
.bg_lit_bul {
  background: #dbefff;
}