@charset "utf-8";
/* CSS Document */
 .cloud_fnctitle {
   width: 100%;
   background: #003da3;
   color: #fff;
   font-size: 36px;
   font-weight: bold;
   padding: 60px 0;
   text-align: center;
   margin-bottom: 0;
 }
 @media (min-width: 769px) {
   .cloud_fnctitle {
     padding: 120px 0 50px;
   }
 }
 @media screen and (max-width:768px) {
   .cloud_fnctitle {
     width: 100%;
     background: #003da3;
     color: #fff;
     font-size: 20px;
     font-weight: bold;
     padding: 40px 0;
     text-align: center;
   }
 }
 #cloud_fnc_sec {
   margin: 50px 0;
   width: 100%;
 }
 .fnc_inner {
   max-width: 1140px;
   margin: 0 auto;
 }
 @media screen and (max-width:768px) {
   .fnc_inner {
     max-width: 90%;
     margin: 0 auto;
   }
 }
 .sub_fnctitle {
   font-size: 34px;
   font-weight: 700;
   color: #003da3;
   letter-spacing: 1.5px;
   text-align: center !important;
 }
 @media screen and (max-width:768px) {
   .sub_fnctitle {
     font-size: 24px;
     font-weight: bold;
     color: #003da3;
     letter-spacing: 1.5px;
   }
 }
 .sub_txt {
   line-height: 200%;
   letter-spacing: 1px;
 }
 @media screen and (max-width:768px) {
   .sub_txt {
     text-align: left;
   }
 }
 @media screen and (max-width:768px) {
   .sp100 img {
     width: 100% !important;
     margin: 0 !important;
   }
 }
 #cti_contents_area, [id^="gamen"] {
   text-align: left;
 }
 #cti_contents_area, #gamen3 {
   text-align: center;
 }
/*-----------------------------セクションベース*/
[id^="sec_"] {
  padding: 50px 0;
  margin-top: 0;
  position: relative;
}
[id^="sec_"] .container {
  margin-top: 30px;
}
[id^="sec_"] p {
  font-size: 16px;
  margin-bottom: 30px;
}
@media print, screen and (min-width:768px) {
  [id^="sec_"] p {
    font-size: 18px;
    line-height: 1.8em;
  }
}
[id^="sec_"] h3:not(.sub_fnctitle) {
  color: #3366ff;
  font-size: 28px;
  font-weight: 900;
  margin-bottom: 30px;
  padding-bottom: 10px;
  /*  padding-right: 30px;
  padding-left: 30px;*/
  display: inline-block;
}
@media screen and (min-width:768px) {
  [id^="sec_"] h3:not(.sub_fnctitle) {
    font-size: 36px;
  }
}
@media print, screen and (min-width:768px) {
  [id^="sec_"] h3 {
    font-size: 42px;
  }
}
[id^="sec_"] h4 {
  color: #0660c5;
  font-size: 28px;
  margin-bottom: 10px;
  font-weight: bold;
}
[id^="sec_"] ul li p {
  text-align: left;
  margin: 15px auto;
}
 /*-----------------------------------------機能タグ*/
 #gamen .fnc_box {
   margin-bottom: 30px;
 }
 #gamen .fnc_box h4 {
   font-weight: bold;
   width: 100%;
   border-bottom: 1px solid #000;
   color: #000;
   padding: 3px;
   margin: 0 0 10px;
   text-align: center;
 }
 #gamen .fnc_box ul.tag_p {
   display: flex;
   flex-wrap: wrap;
   flex-direction: row;
   justify-content: flex-start;
 }
 #gamen .fnc_box ul.tag_p li {
   background: #F7FFF4;
   border-radius: 20px;
   border: 1px solid #66cc00;
   color: #666;
   font-size: 14px;
   font-weight: bold;
   margin-bottom: 10px;
   margin-right: 0px;
   padding-top: 3px;
   padding-bottom: 3px;
   text-align: center;
   width: 100%;
 }
 #gamen .fnc_box ul.tag_p.option_func li {
   background: #F4FFFF;
   border: 1px solid #3399ff;
 }
 @media screen and (min-width:768px) {
   #gamen .fnc_box ul.tag_p li {
     width: 30%;
     margin-right: 10px;
   }
 }
 #photo {
   width: 100%;
   height: 330px;
   margin: 0 auto;
   position: relative;
 }
 #photo img {
   width: 90%;
   height: auto;
   margin: 0 auto;
   max-width: 500px;
   position: absolute;
   left: 0px;
 }
 @media screen and (max-width:768px) {
   #photo {
     width: 100%;
     height: 150px;
   }
   #photo img {
     width: 90%;
     margin: 0 auto;
     max-width: 500px;
     position: absolute;
     left: 0px;
   }
 }
 #photo2 {
   width: 100%;
   height: 330px;
   margin: 0 auto;
   position: relative;
   left: 0;
 }
 #photo2 img {
   width: 90%;
   height: auto;
   margin: 0 auto;
   max-width: 600px;
   position: absolute;
 }
 @media screen and (max-width:768px) {
   #photo2 {
     height: 200px;
   }
   #photo2 img {
     width: 100% !important;
     margin: 0 auto !important;
     max-width: 600px;
     position: absolute;
     left: 0px;
   }
 }
 #photo3 {
   width: 100%;
   height: 330px;
   margin: 0 auto;
   position: relative;
 }
 #photo3 img {
   width: 90%;
   height: auto;
   margin: 0 auto;
   max-width: 150px;
   position: absolute;
   left: 150px;
 }
 @media screen and (max-width:768px) {
   #photo3 img {
     width: 90%;
     margin: 0 auto;
     max-width: 150px;
     position: absolute;
     left: 30px;
   }
 }
 #photo4 {
   width: 100%;
   height: 330px;
   margin: 0 auto;
   position: relative;
   left: 0;
 }
 #photo4 img {
   width: 90%;
   height: auto;
   margin: 0 auto;
   max-width: 600px;
   position: absolute;
 }
 @media screen and (max-width:768px) {
   #photo4 {
     height: 200px;
   }
   #photo4 img {
     width: 100% !important;
     margin: 0 auto !important;
     max-width: 600px;
     position: absolute;
     left: 00px;
   }
 }
 #gamen dl dt h4 {
   font-weight: bold;
   width: 100%;
   border-bottom: 1px solid #000;
   color: #000;
   padding: 3px;
   margin: 0 0 10px;
 }
 .fnc_box {
   margin-top: 10px;
 }
 .bg_ub {
   background-color: #f9faff;
   padding: 50px 0;
 }
 #gamen1 dl {
   display: table;
 }
 #gamen1 dl dt {
   display: table-cell;
   width: 50%;
   padding: 0;
   margin: 0;
   vertical-align: middle;
   float: none !important;
 }
 #gamen1 dl dd {
   display: table-cell;
   width: 50%;
   padding: 0;
   margin: 0;
   float: none !important;
 }
 #gamen1 dl dt img {
   vertical-align: middle;
 }
 #gamen1 dl dd img {
   vertical-align: middle;
 }
 @media screen and (max-width:768px) {
   #gamen1 dl dt {
     display: block;
     width: 100%;
     padding: 0;
     margin: 0;
   }
   #gamen1 dl dd {
     display: block;
     width: 100%;
     padding: 0;
     margin: 0;
   }
 }
 #gamen1 dl dd img {
   width: 90%;
   margin: 0 auto;
 }
 #gamen1 dl dt img {
   width: 90%;
   margin: 0 auto;
 }
 @media screen and (max-width:768px) {
   #gamen1 dl dd img {
     width: 100%;
     margin: 0 auto;
   }
   #gamen1 dl dt img {
     width: 100%;
     margin: 0 auto;
   }
 }
 .news_basic {
   width: 100%;
 }
 .news_basic td {
   border-collapse: collapse;
   border: 1px solid #efefef;
   padding: 20px;
   box-sizing: border-box;
 }
 .news_basic th {
   border-collapse: collapse;
   border: 1px solid #fff;
   padding: 20px;
   background: #efefef;
   box-sizing: border-box;
 }
 @media screen and (max-width:768px) {
   .spnone {
     display: none;
   }
 }
 #gamen2 dl dt {
   display: table-cell;
   width: 50%;
   padding: 0;
   margin: 0;
   float: none !important;
 }
 #gamen2 dl dd {
   display: table-cell;
   width: 50%;
   padding: 0;
   margin: 0;
   vertical-align: middle;
   float: none !important;
 }
 #gamen2 dl dt img {
   vertical-align: middle;
 }
 #gamen2 dl dd img {
   vertical-align: middle;
 }
 @media screen and (max-width:768px) {
   #gamen2 dl dt {
     display: block;
     width: 100%;
     padding: 0;
     margin: 0;
   }
   #gamen2 dl dd {
     display: block;
     width: 100%;
     padding: 0;
     margin: 0;
   }
 }
 #gamen2 dl dd img {
   width: 90%;
   margin: 0 5%;
 }
 #gamen2 dl dt img {
   width: 90%;
   margin: 0 auto;
 }
 @media screen and (max-width:768px) {
   #gamen2 dl dd img {
     width: 100%;
     margin: 0 auto;
   }
   #gamen2 dl dt img {
     width: 100%;
     margin: 0 auto;
   }
 }
 #gamen3 dl dt {
   float: left;
   width: 40%;
   padding: 0;
   margin: 0;
 }
 #gamen3 dl dd {
   float: left;
   width: 60%;
   padding: 0;
   margin: 0;
 }
 @media screen and (max-width:768px) {
   #gamen3 dl dt {
     float: left;
     width: 100%;
     padding: 0;
     margin: 0;
   }
   #gamen3 dl dd {
     float: left;
     width: 100%;
     padding: 0;
     margin: 0;
   }
 }
 #gamen3 dl dd img {
   width: 90%;
   margin: 0 5%;
 }
 #gamen3 dl dt img {
   width: 90%;
   margin: 0 auto;
 }
 .parent {
   width: 100%;
   margin-bottom: 30px;
 }
 .parent li {
   float: left;
   width: 30.333%; /*-- �{�^���̉����i�C�ӂ̒l�j --*/
   height: auto; /*-- �{�^���̏c���i�C�ӂ̒l�j --*/
   border: 1px solid #ccc;
   box-shadow: 0 4px 0 0 rgb(227 228 232 / 40%);
   border-radius: 5px; /*-- �{�^���̘g���i�C�ӂ̒l�j --*/
   text-align: center; /*-- �e�L�X�g�̒����z�u�i���񂹂ł�����j --*/
   line-height: 50px; /*-- �T�C�Y��height�ɍ��킹�� --*/
   position: relative;
   margin: 10px 1.5%;
 }
 @media screen and (max-width:768px) {
   .parent li {
     width: 100%;
     margin: 10px 0;
   }
 }
 .child2 {
   position: absolute;
   right: 10px; /*-- �E�[����̋����i�C�Ӂj --*/
 }
 .link_blue {
   display: block;
 }
 .link_blue:hover {
   font-weight: bold;
   background: #003da3;
   color: #fff;
   border-radius: 5px;
 }
 .youtube {
   position: relative;
   width: 100%;
   max-width: 560px;
   margin: 20px auto 0;
 }
 .youtube::before {
   content: "";
   display: block;
   width: 100%;
   padding-top: 56.25%;
 }
 .youtube iframe {
   position: absolute;
   top: 0;
   right: 0;
   width: 100%;
   height: 100%;
 }
 .tab-1-tab {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   list-style: none;
   max-width: 600px;
   margin: 0 auto;
 }
 .tab-1-tab::after {
   content: none;
 }
 .tab-1-tab li {
   background: #bfbfbf;
   color: #fff;
   cursor: pointer;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 18px;
   font-weight: bold;
   text-align: center;
   width: 300px;
   padding: 31px 0;
   transition: all .2s ease-out;
 }
 @media screen and (max-width:768px) {
   .tab-1-tab li {
     margin: 0 auto;
   }
 }
 .tab-1-tab li:hover {
   background: #004ea2;
 }
 .tab-1-tab .active {
   background: #004ea2;
 }
 .tab-1-wrapper {
   background: #f5f5f5;
   padding: 30px;
 }
 .tab-1-box {
   display: none;
   flex-wrap: wrap;
   justify-content: space-between;
 }
 .tab-1-box.active {
   display: flex;
 }
 .tab-1-inner {
   width: 440px;
 }
 .tab-1-icon {
   border-radius: 18.5px;
   color: #fff;
   display: inline-block;
   font-size: 15px;
   font-weight: bold;
   line-height: 37px;
   margin: 0 20px 20px 0;
   padding: 0 30px 0 55px;
   position: relative;
 }
 .tab-1-icon::before {
   border-right: 1px dotted #fff;
   content: "";
   display: block;
   width: 0;
   height: 15px;
   margin: auto;
   position: absolute;
   top: 0;
   bottom: 0;
   left: 43px;
 }
 .tab-1-title {
   color: #004ea2;
   font-size: 18px;
   font-weight: bold;
   margin-bottom: 15px;
 }
 .tab-1-text {
   font-size: 15px;
   margin-bottom: 20px;
 }
 .tab-1-text::last-child {
   margin-bottom: 0;
 }
 .tab-1-img {
   text-align: center;
   width: 410px;
 }
 .table-1, .table-2, .table-3 {
   border-collapse: collapse;
   border-spacing: 0;
   width: 100%;
 }
 .sec--05 .tab-1-tab {
   width: 90%;
   margin: 20px auto 0;
 }
 .sec--05 .tab-1-tab li {
   font-size: 18px;
   padding: 12px 0;
   width: calc(100% / 3);
   background-color: #a8b5be;
   color: #fcfcfc;
   border-left: 1px solid #fff;
 }
 .sec--05 .tab-1-tab li.active {
   background-color: #26455c;
   color: #fff;
 }
 .sec--05 .tab-1-tab li:hover {
   background-color: #26455c;
   color: #fff;
 }
 .sec--05 .tab-1-wrapper {
   padding: 30px 30px 0;
 }
 .sec--05 .tab-1-inner {
   width: 100%;
 }
 .sec--05 ol {
   list-style: none;
   display: flex;
   height: 400px;
   overflow: hidden;
 }
 .sec--05 ol:after {
   content: none;
 }
 .sec--05 ol li {
   position: relative;
   width: calc(100% / 3);
   text-align: center;
 }
 @media print, screen and (max-width: 640px) {
   .sec--05 ol li {
     width: 100%;
   }
 }
 .sec--05 ol li img {
   width: 70%;
 }
 .sec--05 ol li:nth-child(2):before, .sec--05 ol li:nth-child(3):before {
   content: "";
   position: absolute;
   left: -5px;
   top: 250px;
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 11px 0 11px 12px;
   border-color: transparent transparent transparent #a8b5be;
 }
 .sec--05 ol li p:nth-child(1) {
   display: inline-block;
   font-size: 24px;
   background-color: #26455c;
   color: #fff;
   padding: 1px 12px;
   border-radius: 50%;
 }
 .sec--05 ol li p:nth-child(2) {
   font-size: 16px;
   color: #26455c;
   font-weight: bold;
 }
 .sec--05 ol li p:nth-child(2) span {
   font-size: 12px;
   font-weight: bold;
   color: #26455c;
 }
 .tab-1-inner ol > li:before {
   content: none;
   counter-increment: none;
 }
 dl.divider {
   width: 100%;
   margin: 0;
   padding: 0;
   display: inline-block;
 }
 dl.divider::after {
   content: "";
   clear: both;
   display: block;
 }
 dl.divider dt a:hover {
   opacity: 0.6;
 }
 dl.divider dt {
   width: 50%;
   margin: 0;
   padding: 0;
   float: left;
 }
 dl.divider dt img {
   width: 90%;
   margin: 0 5%;
 }
 dl.divider dt p {
   width: 90%;
   margin: 10px 5%;
   font-size: 14px;
 }
 @media screen and (max-width:768px) {}
 @media screen and (max-width:480px) {
   dl.divider dt {
     width: 100%;
     margin: 0;
     padding: 0;
     clear: left;
   }
 }
 li.widget_text {
   list-style-type: none;
 }
 .link_rec {
   color: #226EE8;
 }
 .link_rec:hover {
   font-weight: bold;
 }
 .lb-outerContainer {
   width: 90% !important;
   height: auto !important;
 }
 .lightbox .lb-image {
   width: 90% !important;
   height: auto !important;
   margin: 0 auto;
 }
 .w100_cti {
   width: 100%;
   margin: 40px auto;
 }
 @media screen and (max-width:768px) {
   .w100_cti img {
     width: 100%;
     margin: 0;
   }
 }
 .syousai {
   width: 100%;
   margin: 0 auto;
 }
 .syousai img {
   width: 60%;
   margin: 0 auto;
 }