@charset "utf-8";
.policy-text {
 padding: 10px 60px 10px 30px;
}
.policy-text ol li h3, .policy-text ul li h3, aside.topolicy h3, .polcy li h3, .sitemap-text h3 {
 margin-bottom: 20px;
 padding-bottom: 11px;
 border-bottom: 1px solid #aaa;
 line-height: 1.4;
 font-size: 1.8rem;
 font-weight: bold;
}
.policy-text ol li p, .policy-text ul li p {
 margin-bottom: 60px;
 margin-top: -8px;
 padding-right: 20px;
}
/*   message   */
.section-header .section-title, .section-title {
 font-size: 3rem;
 color: #656565;
 text-transform: uppercase;
 position: relative;
 padding-bottom: 20px;
 margin: 0 0 20px;
}
.section-header .section-title:before {
 content: "";
 position: absolute;
 width: 140px;
 bottom: 0;
 left: 50%;
 margin-left: -70px;
 height: 1px;
 background: #ebebeb;
}
.section-header .section-title:after {
 content: "";
 position: absolute;
 width: 24px;
 height: 24px;
 bottom: -11px;
 left: 50%;
 margin-left: -12px;
 border: 5px solid #fff;
 border-radius: 20px;
 background: #45aed6;
}
.vision {
 visibility: visible;
 color: #5A90C8;
 font-size: 3.5rem;
 line-height: 1.5em;
 font-weight: 400;
}
.list01 li::before {
 content: "一、"
}
.list01 li {
 text-indent: -2em;
 padding-left: 2em;
}
/*   outline   */
#outline dt {
 width: 8em;
 float: left;
 padding-bottom: 0em !important;
 margin-bottom: 10px !important;
}
#outline dd {
 padding-left: 9em;
 padding-bottom: 0em !important;
 margin-bottom: 10px !important;
}
/*   disclosure&history   */
table.history {
 border-top: 1px solid #646464 !important;
}
table.history tr {
 border-bottom: 1px solid #646464 !important;
}
table.history th {
 width: 260px;
 padding: 12px !important;
 background-color: #DEF0F7;
 border-top: 1px solid #646464 !important;
}
table.history td {
 line-height: 1.8;
 padding: 12px !important;
 border-top: 1px solid #646464 !important;
}
table.disclosure caption {
 margin-top: 20px;
 text-align: left;
 font-size: 1.6rem;
}
table.disclosure {
 font-size: 1.6rem;
 border-top: 1px solid #929292;
 border-left: 1px solid #929292;
 width: 90%;
}
table.disclosure th {
 border-bottom: 1px solid #929292;
 border-right: 1px solid #929292;
 width: 80%;
 padding: 12px;
 font-weight: 400;
}
table.disclosure td {
 border-bottom: 1px solid #929292;
 border-right: 1px solid #929292;
 width: 20%;
 line-height: 1.8;
 padding: 12px;
}
table.disclosure ul {
 list-style-type: disc;
 list-style-position: outside;
 padding-left: 1em;
}
/*history*/
#history dl {
 margin-bottom: 20px !important
}
.historyHead {
 padding: 3px 5px;
 border-left: 7px solid;
 border-color: #CCCC32;
 padding-left: 10px;
}
#history .historyMenu a:visited {
/* color: #333;*/
 text-decoration: none;
}
#history .historyMenu a:hover {
 color: #11C1C9;
 text-decoration: underline;
}
@media print, screen and (min-width:922px) {
 .historyMenu {
  width: 100%;
 }
 .historyMenu li {
  line-height: 1.8;
  padding-right: 30px;
 }
 .historyMenu li a:before {
  font-family: 'FontAwesome';
  content: "\f144";
  margin: 0 5px 0 0;
  color: #0005FF;
 }
 .historyWrapper {
  width: 100%;
  /*float: left;*/
 }
 .historyBox {
  width: 75%;
  margin-top: 10px;
  float: left;
  padding-left: 20px;
 }
 .historyBox dl {
  padding-bottom: 10px;
 }
 .historyBox dt {
  font-size: 28px;
  border-bottom: 1px solid #e5e5e5;
  font-weight: normal;
  border-left: 7px solid #e5e5e5;
  padding-left: 9px;
  color: #666666;
 }
 .historyBox dd {
  padding-top: 10px;
  margin-left: 20px;
 }
 .historyBox li {
  list-style: disc;
  line-height: 1.8;
 }
 .historyImgBox {
  width: 25%;
  padding-left: 100px;
  float: left;
  margin-top: 40px;
 }
 .historyImgBox img {
  width: 100%;
 }
 .historyImgBox dd {
  padding: 10px 0;
 }
}
@media only screen and (min-width:767px) and (max-width:992px) {
 .historyMenu {
  width: 100%;
 }
 .historyMenu li {
  line-height: 1.8;
  padding-right: 30px;
 }
 .historyMenu li a:before {
  font-family: 'FontAwesome';
  content: "\f144";
  margin: 0 5px 0 0;
  color: #0005FF;
 }
 .historyWrapper {
  width: 100%;
  float: left;
 }
 .historyBox {
  width: 70%;
  margin-top: 10px;
  float: left;
 }
 .historyBox dl {
  padding-bottom: 10px;
 }
 .historyBox dt {
  font-size: 28px;
  border-bottom: 1px solid #e5e5e5;
  font-weight: normal;
  border-left: 7px solid #e5e5e5;
  padding-left: 9px;
  color: #666666;
 }
 .historyBox dd {
  padding-top: 10px;
  margin-left: 20px;
 }
 .historyBox li {
  list-style: disc;
  line-height: 1.8;
 }
 .historyImgBox {
  width: 30%;
  padding-left: 100px;
  float: left;
  margin-top: 40px;
 }
 .historyImgBox img {
  width: 100%;
 }
 .historyImgBox dd {
  padding: 10px 0;
 }
}
@media only screen and (max-width: 767px) {
 .historyMenu {
  width: 100%;
 }
 .historyMenu li {
  line-height: 1.8;
  padding-right: 30px;
 }
 .historyMenu li a:before {
  font-family: 'FontAwesome';
  content: "\f144";
  margin: 0 5px 0 0;
  color: #0005FF;
 }
 .historyWrapper {
  width: 100%;
  float: left;
  margin-top: 10px;
 }
 .historyBox {
  width: 100%;
  margin-top: 10px;
  float: left;
 }
 .historyBox dl {
  padding-bottom: 10px;
 }
 .historyBox dt {
  font-size: 28px;
  border-bottom: 1px solid #e5e5e5;
  font-weight: normal;
  border-left: 7px solid #e5e5e5;
  padding-left: 9px;
  color: #666666;
 }
 .historyBox dd {
  padding-top: 10px;
  margin-left: 20px;
 }
 .historyBox li {
  list-style: disc;
  line-height: 1.8;
 }
 .historyImgBox {
  width: 100%;
  float: left;
  margin-top: 30px;
  margin-left: -3%;
 }
 .historyImgBox dl {
  width: 30%;
  display: inline-block;
  vertical-align: top;
  margin-left: 3%;
 }
 .historyImgBox img {
  width: 100%;
 }
 .historyImgBox dd {
  padding: 10px 0;
 }
}
/*------　　Business　　---------*/
.bs-txt {
 background-color: #003a88;
 color: #fff;
 padding: 40px 30px 10px 30px;
 min-height: 200px;
}
.bs-txt h3 {
 margin: 0;
 text-align: center;
 font-size: 2.5rem;
 font-weight: 600;
 line-height: 1.3em
}
.bs-txt a:active, .bs-txt a:hover {
 text-decoration: none;
}
.bs-img {
 width: 100%;
 display: block;
 min-height: 250px;
}
.block01 {
 float: left;
 background: url("/image/company/business/bus-01.jpg") no-repeat center center;
 background-size: cover;
}
.block02 {
 float: left;
 background: url("/image/company/business/bus-02.jpg") no-repeat center center;
 background-size: cover;
}
.block03 {
 float: left;
 background: url("/image/company/business/bus-03.jpg") no-repeat center center;
 background-size: cover;
}
.block04 {
 float: left;
 background: url("/image/company/business/bus-04.jpg") no-repeat center center;
 background-size: cover;
}
/*-- product --*/
.index-content a:hover {
 color: #A10000;
 text-decoration: none;
}
.index-content {
 margin-bottom: 20px;
 padding: 50px 0px;
}
.index-content .row {
 margin-top: 20px;
}
.index-content a {
 color: black;
 border-bottom: 1px solid #555;
}
.card h4 a {border:none;}

.index-content .card {
 background-color: #FFFFFF;
 padding: 0;
 margin-bottom: 30px;
 -webkit-border-radius: 4px;
 -moz-border-radius: 4px;
 border-radius: 4px;
 box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
}
.index-content .card img {
 width: 100%;
 border-top-left-radius: 4px;
 border-top-right-radius: 4px;
}
.index-content .card h4 {
 font-size: 2rem;
 margin: 20px;
 border-left: 4px solid #AFAFAF;
 padding-left: 6px
}
.index-content .card p, .index-content .card ul {
 margin: 20px;
 opacity: 0.95;
}
.index-content .card ul li {padding-bottom: 5px;}
.index-content .blue-button {
 width: 100%;
 -webkit-transition: background-color 1s, color 1s;
 /* For Safari 3.1 to 6.0 */
 transition: background-color 1s, color 1s;
 min-height: 20px;
 background-color: #959A9E;
 color: #ffffff;
 border-radius: 0 0 4px 4px;
 text-align: center;
 font-weight: lighter;
 margin: 0px;
 padding: 5px 0px;
 display: inline-block;
}
@media (max-width: 768px) {
 .index-content .col-lg-4 {
  margin-top: 20px;
 }
}
/*-- Group --*/
#group ul.pricing {
list-style: none;
margin: 55px 0 30px;
border: 1px solid #ccc;
border-radius: 5px 5px 4px 4px;
padding: 15px;
background-color: #fff;
box-shadow:  3px 4px 4px 1px #bbb;
}
#group ul.pricing li {
display: block;
padding: 5px;
text-align: left;
font-size: 1.5rem;
}
#group ul.pricing li.plan-header {
background: #e6e8f1;
border-radius: 4px 4px 0 0;
margin: -15px -15px 10px;
padding: 12px;
border: 0;
text-align: center;
}
#group ul.pricing li.plan-header .price-duration {
position: relative;
margin-top: -63px;
top: -5px;
display: inline-block;
width: 105px;
height: 105px;
background-image: -moz-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
background-image: -webkit-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
background-image: -ms-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
color: #fff;
border-radius: 100px;
border: 5px solid #f6f6f6;
}
a .price-duration .price { color: #fff; }
a:hover .price-duration .price { color: #23527c; }
#group ul.pricing li.plan-header .price-duration > span {
display: block;
line-height: 1;
}
#group ul.pricing li.plan-header .price-duration > span.price, .price-duration a > span.price {
font-size: 24px;
font-weight: 700;
margin-top: 38px;
}
#group ul.pricing li.plan-header .price-duration > span.duration { margin-top: 5px; }
#group ul.pricing li.plan-header .plan-name {
margin-top: 5px;
font-size: 2rem;
color: #272727;
font-weight: 400;
line-height: 1;
}
.plan-name span {color: #272727;
}
#group ul.pricing.featured {
background: #e6e8f1;
color: #100c2f;
border: 0;
}
#group ul.pricing.featured li.plan-header {
background-image: -moz-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
background-image: -webkit-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
background-image: -ms-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
}
#group ul.pricing.featured li.plan-header .plan-name { color: #fff; }
.plan-header a:hover .price-duration, .plan-header a:hover .plan-name, .plan-header a:hover .plan-name span{ color: #0004B3 !important; }
#get-in-touch {
padding: 100px 0 50px;
background-image: -moz-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
background-image: -webkit-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
background-image: -ms-linear-gradient(90deg, #2caab3 0%, #2c8cb3 100%);
color: #fff;
}
#group a:hover, a:focus, a:active, s {
text-decoration: none!important;
outline: 0 !important;
}
.column-title {
visibility: visible;
border-bottom: solid 2px #ccc!important;
position: relative;
color: #333!important;
font-size: 2.0rem!important;
}
.column-title:after {
position: absolute;
content: " ";
display: block;
border-bottom: solid 2px #003a88!important;
bottom: -2px;
width: 35%;
}
@media screen and (min-width: 768px) {
  .item-iframe {
    display: block;
    margin: 0 auto;
    max-width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .item-movie {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .item-movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
}