@charset "UTF-8";

.is-pc{
  display: block;
}

.is-sp{
  display: none;
}

.head21{
  font-size: 21px;
  font-weight: 600;
}

.head24{
  font-size: 24px;
  font-weight: 600;
}

.head30{
  font-size: 30px;
  font-weight: 600;
}

.flexBox{
  display: flex;
}

/*----------------------------------------sec-global-----*/

#sec-global{
  background: #fff;
  padding: 260px 0 100px;
  position: relative;
}

.bg-text {
    position: absolute;
    top: 100px;
    left: 50%;
    color: #e5edf3;
    font-size: 90px;
    font-weight: 100;
    font-family: "Sora", sans-serif;
    line-height: 1;
    transform: translateX(-50%);
    width: 100%;
    text-align: center;
}

.flex-global{
  justify-content: space-between;
  margin-bottom: 80px;
}

.global-img{
  margin-left: -5%;
  width: 55%;
}

.global-detail{
  width: 45%;
}

.global-detail .head24{
  font-weight: 600;
  margin-bottom: 10px;
}

.global-detail .blue-bg{
  line-height: 2.4;
  margin-bottom: 30px;
}

.global-detail .blue-bg span{
    background: #024a90;
    color: #fff;
    display: inline-block;
    font-size: 24px;
    font-weight: 600;
    padding: 6px 5px 9px;
    line-height: 1;
}

.blue-area{
  background: #e7ecf3;
  padding: 30px 5%;
}

.blue-area .head24{
  text-align: center;
}

.border-area{
  border: 1px solid #cccccc;
  border-bottom: none;
  padding: 45px 15%;
}

.border-tbl table{
  border-collapse: collapse;
  width: 100%;
}

.border-tbl table td{
  border: 1px solid #cccccc;
  padding: 5%;
  vertical-align: top;
  width: 33.33%;
}

.border-tbl table td .tbl-icon{
  margin: 0 auto 20px;
  width: 55px;
  height: 55px;
  display: flex;
  align-items: center;
}

.border-tbl table td .tbl-ttl{
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 30px;
  text-align: center;
}

/*----------------------------------------sec-partner-----*/

#sec-partner{
  background: #e7ecf3;
  padding: 130px 0 80px;
}

.flex-partner{
  justify-content: space-between;
  margin-bottom: 60px;
}

.partner-ttl{
  width: 50%;
}

.partner-text{
  width: 50%;
}

.border-head{
  margin-bottom: 90px;
  text-align: center;
}

.border-head span{
  border: 1px solid #15283f;
  display: inline-block;
  border-radius: 50px;
  padding: 10px 30px 12px;
}

.corperate{
  background: #63abd6;
  border-radius: 10px;
  margin-bottom: 15px;
  padding: 20px;
  position: relative;
}

.corperate .text21{
  color: #fff;
  font-size: 21px;
  font-weight: 600;
  text-align: center;
}

.corperate .corp-img{
  position: absolute;
  width: 85px;
  left: 50%;
  top: -60px;
  transform: translateX(-50%);
}

.red-arrow{
  margin-bottom: 15px;
  text-align: center;
}

.red-arrow img{
  width: 55px;
}

.white-box{
  background: #fff;
  border-radius: 15px;
  padding: 45px 13% 60px;
}

.white-box .logo{
  margin: 0 auto 20px;
  text-align: center;
  width: 140px;
}

.white-box .flex-party{
  list-style: none;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 -1%;
}

.white-box .flex-party li{
  border: 1px solid #63abd6;
  color: #63abd6;
  font-weight: 600;
  padding: 15px;
  text-align: center;
  width: 23%;
  margin: 0 1%;
}

.gold-border{
  border: 1px solid #ddb049;
  padding: 40px 5%;
  margin: 25px 0;
}

.gold-head.head20{
  color: #ddb049;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  text-align: center;
}

.network{
  display: flex;
  justify-content: center;
}

.network span{
  font-size: 17px;
  margin: 0 15px;
}

/*----------------------------------------sec-solution-----*/

#sec-solution{
  padding: 100px 0 120px;
}

.solution-head{
  margin-bottom: 45px;
  text-align: center;
}

.solution-txt{
  max-width: 670px;
  margin: 0 auto 70px;
  width: 100%;
}

@media only screen and (max-width: 1420px){

#sec-global {
    padding: 240px 0 100px;
}

.bg-text {
    font-size: 100px;
}
}

@media only screen and (max-width: 1300px){
#sec-global {
    padding: 190px 0 100px;
}

.bg-text {
    font-size: 80px;
    top: 80px;
}
}


@media only screen and (max-width: 1080px){

.head21 {
    font-size: 18px;
}

.head30 {
    font-size: 24px;
}

#sec-global {
    padding: 170px 0 100px;
}

.bg-text {
    font-size: 60px;
}

.border-tbl table td {
    padding: 5% 3%;
}

.border-tbl table td .tbl-ttl {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
    text-align: center;
}

}

@media only screen and (max-width: 834px){

.is-pc{
  display: none;
}

.is-sp{
  display: block;
}

.head24 {
    font-size: 18px;
}

#sec-global {
    padding: 110px 0 60px;
}

.global-detail .head24 {
    font-size: 22px;
}

.global-detail .blue-bg span {
    font-size: 22px;
    line-height: 1.7;
    padding: 0px 5px;
}

.bg-text {
    font-size: 30px;
}

.flex-global {
    display: block;
    margin-bottom: 50px;
}

.global-img {
    width: 100%;
    margin-left: 0;
    margin-bottom: 25px;
}

.global-detail {
    margin-bottom: 25px;
    width: 100%;
}

.global-detail .blue-bg {
    line-height: 2;
    margin-bottom: 20px;
}

.global-detail .blue-bg span {
    font-size: 18px;
}

.blue-area {
    padding: 6% 5%;
}

.blue-area .head24 {
    font-size: 18px;
    line-height: 1.6;
}

.border-tbl table td {
    width: 50%;
}

.tbl-icon img {
    width: 100%;
    height: 55px;
    object-fit: contain;
}

#sec-partner {
    padding: 60px 0 60px;
}

.flex-partner {
    margin-bottom: 30px;
    display: block;
}

.partner-ttl {
    width: 100%;
    margin-bottom: 30px;
    font-size: 22px;
}

.partner-text {
    width: 100%;
}


.border-head {
    margin-bottom: 70px;
    text-align: center;
    line-height: 1.4;
    font-size: 16px;
}

.corperate {
    padding: 15px;
}

.corperate .corp-img {
    width: 55px;
    top: -40px;
}

.red-arrow img {
    width: 35px;
}

.white-box {
    padding: 8% 5%;
}

.white-box .flex-party {
    justify-content: flex-start;
}

.white-box .flex-party li {
    padding: 5px;
    width: 48%;
    margin: 0 1% 2%;
}

.gold-border {
    padding: 8% 5%;
    margin: 5px 0 10px;
}

.gold-head.head20 {
    font-size: 18px;
    margin-bottom: 10px;
}

.network{
  flex-wrap: wrap;
}

.network span {
    font-size: 13px;
    margin: 0 1%;
    width: 48%;
}

.solution-img{
  overflow: scroll;
  padding-bottom: 15px;
}

.solution-img img{
  width: 1000px;
}

.note{
  color: #ccc;
  font-size: 12px;
  text-align: center;
  margin-top: 10px;
}

#sec-solution {
    padding: 60px 0 60px;
}

.solution-head {
    margin-bottom: 25px;
}

.solution-txt {
    margin: 0 auto 40px;
}

}

@media only screen and (max-width: 450px){

.bg-text {
    top: 60px;
}

.blue-area {
    padding: 4% 5%;
}

.border-area {
    padding: 5% 5%;
}

}


