@charset "utf-8";/*================================================================	Base Setting================================================================*/html, body, #wrap {  overflow-x: hidden;  width: 100%;  min-width: 320px;}body {  line-height: 2;  font-family: "Noto Sans JP", "Noto Sans Japanese", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "sans-serif";  font-size: 16px;  font-feature-settings: "palt";  color: #222;}body img {  width: auto;  vertical-align: bottom;}body a {  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);  text-decoration: none;  color: inherit;}.baseWidth {  position: relative;  max-width: 1080px;  min-width: 320px;  margin: 0 auto;}.line {  background: linear-gradient(transparent 70%, #fffa81 70%);  font-weight: bold;  color: #0076b3;}.spStyle {  display: none;}.pcStyle {  display: block;}.center {  text-align: center;}#globalLang {  display: none;}@media only screen and (max-width:1024px) {  body {    font-size: 14px;  }  body a:hover img {    opacity: 1;  }  .spStyle {    display: block;  }  .pcStyle {    display: none;  }  #globalHeader {    display: none;  }}/* #header--------------------------------------------*/#spMenu {  display: none;}#header {  position: relative;  top: 0;  left: 0;  width: 100%;  min-width: 320px;  padding: 0 30px;  background: #000;  background: #121212;  z-index: 100;}#header.fixed {  position: fixed !important;}#gNav, #gNav ul {  display: flex;  justify-content: space-between;  align-items: center;  height: 110px;  height: 80px;}#gNav ul a {  color: #FFF;  display: block;  margin-left: 2em;  padding: 20px 0;}#gNav .contactNano a {  padding: 0.4em 1em;  background: #077fad;  border-radius: 2px;}#gNav .child {  display: none;  position: absolute;  top: 70px;  height: auto;  margin-left: 2em;  background: #444;}/*#gNav li:hover .child { display: flex; }*/#gNav li:hover .child {  display: block;}#gNav .child li {  margin-left: 0;}#gNav .child a {  display: flex;  align-items: center;  height: auto;  margin-left: 0;  padding: 0.4em 1em;  color: #FFF;}#gNav .child a:hover {  background: #666;}#gNav .child li:last-of-type a {  border: 0;}#gNav .spStyle {  display: none;}#logo {  position: relative;  width: 250px;}@media only screen and (max-width:1024px) {  #globalHeader {    display: none;  }  #spMenu {    display: flex;    justify-content: center;    align-items: center;    position: relative;    width: 50px;    height: 50px;    background: #004a88;    background: #333;  }  #spMenu span, #spMenu:before, #spMenu:after {    content: "";    display: inline-block;    position: absolute;    width: 26px;    height: 2px;    background: #FFF;    transition: 0.3s;  }  #spMenu:before {    top: 14px;  }  #spMenu:after {    bottom: 14px;  }  #spMenu.open {    background: #1768ac;    background: #000;  }  #spMenu.open:before, #spMenu.open:after {    top: auto;    bottom: auto;    background: #FFF;  }  #spMenu.open:before {    transform: rotate(45deg);  }  #spMenu.open:after {    transform: rotate(-45deg);  }  #spMenu.open span {    opacity: 0;  }  #spMenu.open + ul {    display: block;  }  #header {    padding-left: 1em;    padding-right: 0;  }  #gNav {    height: 50px;  }  #gNav .pcStyle {    display: none !important;  }  #gNav > ul {    overflow-y: auto;    display: none;    position: fixed;    top: 50px;    right: 0;    width: 100%;    height: 100%;    background: rgba(0, 0, 0, 0.95);    font-weight: normal;  }  #gNav ul .spStyle, #gNav ul a {    display: flex;    justify-content: flex-start;    align-items: center;    position: relative;    height: 40px;    margin-left: 0;    padding: 0 1em;    border-top: 1px solid rgba(255, 255, 255, 0.2);    /*		background: rgba(0,74,136,0.95);		*/    color: #FFF;    border-radius: 0px !important;    cursor: pointer;    font-weight: normal;  }  #gNav li:first-of-type a {    border: 0;  }  #gNav ul .spStyle:after, #gNav ul a:after {    content: "";    position: absolute;    right: 1em;    border-style: solid;    border-width: 6px 0 6px 6px;    border-color: transparent transparent transparent #FFF;  }  #gNav ul .slideToggle.active {    background-color: #222;  }  #gNav ul .slideToggle.active:after {    transform: rotate(-90deg);  }  #gNav ul.child {    display: none;    position: static;    margin-left: 0;  }  #gNav li:hover ul.child {    display: none;  }  #gNav ul.child a {    border-top: 1px solid rgba(255, 255, 255, .1) !important;  }  #gNav ul.child a:before {    content: "-";    margin: 0 .5em 0 2px;  }  #gNav .contactNav a {    justify-content: space-between;    flex-direction: row-reverse;    width: auto;    padding: 0 1em;    border-color: rgba(250, 168, 2, 1.0);    background: rgba(250, 168, 2, 0.9);    background: #077fad;    font-size: inherit;  }  #gNav .contactNav a:after {    display: none;  }  /*	#gNav .spStyle { display: block; }	*/  #logo {    top: 0;    width: 180px;    /*height: 58px;*/  }}/* #main--------------------------------------------*/.breadcrumbs {  overflow-x: auto;  display: flex;  width: 100%;  padding: 0.5em 30px;  background: #060606;  font-size: 0.875em;}.breadcrumbs, .breadcrumbs a {  white-space: nowrap;  color: rgba(255, 255, 255, 0.3);}.breadcrumbs .current-item {  color: rgba(255, 255, 255, 0.5);}.breadcrumbs > span + span:before {  content: "\0bb";  margin: 0 0.5em;}.breadcrumbs a {  text-decoration: underline;}.breadcrumbs a:hover {  text-decoration: none;}#main {  position: relative;  /*	padding-top: 110px;	*/}@media only screen and (max-width:1024px) {  /*	#main { padding-top: 50px; }	*/}@media only screen and (max-width:768px) {  .breadcrumbs {    padding: 0.5em 1.2em;    font-size: 10px;  }}/*================================================================	Contents layout================================================================*/.bnrVpTrial {  padding: 1em;  text-align: center;}.bnrVpTrial a {  display: inline-block;  border: 1px solid #FFF;  background: #000;}.bnrVpTrial img {  transition: 0.3s;}.bnrVpTrial a:hover img {  opacity: 0.6;}.youtube {  position: relative;  width: 100%;  height: 0;  padding-top: 56.25%;}.youtube iframe {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;}.new {  display: inline-flex;  align-items: center;  justify-content: center;  height: 18px;  margin-right: 5px;  padding: 0 0.5em;  background: #077fad;  text-indent: initial;  font-size: 12px;  color: #FFF;}.headline {  font-size: 2.4em;  letter-spacing: 0.1rem;  margin-bottom: 1.7em;  line-height: 1.6;}.headline span {  font-size: 0.7em;}section.sec .headicon span {  font-weight: bold;  letter-spacing: 0.2em;  position: relative;  display: inline-block;  padding: 0 22px;}section.sec .headicon span:before, section.sec .headicon span:after {  content: '';  position: absolute;  top: 50%;  display: inline-block;  width: 10px;  height: 1px;  background-color: #666;}section.sec .headicon span:before {  left: 0;}section.sec .headicon span:after {  right: 0;}section.sec .txt p, section.sec .txt ul {  margin-bottom: 1.6em;}.contact a, .btnType01 a, .btnType02 a {  display: inline-flex;  justify-content: center;  align-items: center;  color: #FFF;  position: relative;  z-index: 10;}.contact a {  min-width: 240px;  padding: 0 1em;  background-color: transparent;  border: 2px solid #FFF;  border-radius: 2px;  text-align: center;  font-weight: bold;}.contact a i, .btnType01 a i, .btnType02 a i {  font-size: 1.2em;  padding-right: 0.3em;}.btnType01 a {  color: #FFF;  min-width: 200px;  letter-spacing: 0.1em;  padding: 0.8em 2.6em;  background: #004a88;  border-radius: 4px;}.btnType02 a {  color: #004a88;  text-align: left;  font-weight: bold;  letter-spacing: 0.1em;  padding: 0.5em 1.5em;  background: #FFF;  border: 2px solid #004a88;  border-radius: 4px;  min-width: 240px;  justify-content: space-between;}.contact a:hover, .btnType01 a:hover, .btnType02 a:hover, .banlink a:hover {  opacity: 0.7;  transition: all 0.3s ease 0s;}.buttonArrow span::before {  content: '';  position: absolute;  top: 50%;  right: 0.8em;  width: 8px;  height: 2px;  margin-top: -3px;  background-color: #004a88;  -webkit-transform: translateY(-50%) rotate(45deg);  transform: translateY(-50%) rotate(45deg);}.buttonArrow span::after {  content: '';  position: absolute;  top: 50%;  right: 0.8em;  width: 30px;  height: 2px;  background-color: #004a88;  -webkit-transform: translateY(-50%);  transform: translateY(-50%);}.contactArea {  color: #FFF;  background: #002544 url("../img/bg_contact.jpg") no-repeat -80% 50%;  background-size: 80%;  background-attachment: scroll;  padding: 5em 0;  /*background:linear-gradient(to left, #DB245B, #EB7988);*/}.contactArea .baseWidth {  display: flex;  justify-content: space-between;  align-items: center;  max-width: 1000px;}.contactArea .headline {  font-size: 2em;  letter-spacing: 0.2em;  margin-bottom: 0.5em;  text-align: left;}.contactArea .eng {  font-size: 1.5em;  font-weight: bold;  letter-spacing: 0.1em;  font-family: 'Roboto', sans-serif;}.contactArea .baseWidth .txt p {  margin-bottom: 0;}.contactArea .contact a {  font-size: 1.1em;  font-weight: bold;  letter-spacing: 0.1em;  height: auto;  padding: 0.8em 3em;  margin-top: 0.8em;}.contactArea .contact a i {  padding-right: 0.6em;}.linkList {  margin-top: 1.4em;}.linkList li {  text-indent: -1em;  margin-left: 3em;  line-height: 1.6;  margin-bottom: 0.3em;}.linkList li i {  padding-right: 0.5em;}.linkList li a, .linkList li a:hover, .linkList li a:visited {  color: #0e6bc1;}.linkUnderline a {  position: relative;  display: inline-block;  text-decoration: none;}.linkUnderline a::after {  position: absolute;  bottom: -4px;  left: -4%;  content: '';  width: 105%;  height: 1px;  background: #0e6bc1;  transform: scale(0, 1);  transform-origin: left top;  transition: transform .3s;}.linkUnderline li a:hover::after {  transform: scale(1, 1);}.txtLink {  color: #0e6bc1;  border-bottom: 1px solid #0e6bc1;}.txtLink:hover {  border-bottom: 0;}@media only screen and (max-width:1024px) {  .headline {    font-size: 2em;    padding: 0 1em;  }  .btnType01 a, .btnType02 a {    width: 100%;  }  .contactArea {    padding: 4em 1em;    background: #002544 url("../img/bg_contact.jpg") no-repeat 50% 0%;    background-size: cover;    background-attachment: scroll;  }  .contactArea .contact a {    font-size: 1.2em;    padding: 0.7em 2em;  }  .contactArea .baseWidth {    display: block;    text-align: center;  }  .contactArea .baseWidth .txt p {    margin-bottom: 1.8em;  }  .contactArea .headline {    text-align: center;    margin-bottom: 0.2em;  }}@media only screen and (max-width:450px) {  .btnType01 a {    min-width: initial;  }}.toggle + * {  display: none;}.toggle.active + * {  display: block;}ul.caution {  padding-left: 1em;}ul.caution li {  text-indent: -1em;}ul.caution li:before {  content: "＊";  color: #7a0018;}.youtube {  width: auto;  margin: 0 auto 3rem;}.youtube .movie {  position: relative;  padding-top: 56.25%;}.youtube iframe {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;}.youtube p {  padding-top: 1rem;}@media only screen and (max-width:1024px) {  .youtube {    width: 100%;    margin: 0 auto 2em;  }  .youtube p {    padding-top: 1em;  }}/* colorbox main------------------*/#cboxLoadingOverlay, #cboxLoadingGraphic {  display: none !important;}#colorbox, #cboxWrapper, #cboxContent, #cboxLoadedContent, #cboxMain {  position: fixed !important;  top: 0 !important;  left: 0 !important;  width: 100% !important;  height: 100% !important;  min-width: 320px;  background: none !important;  cursor: pointer;}#cboxMain, #cboxInner {  display: flex;  justify-content: center;  align-items: center;}#cboxInner {  position: relative;  width: 80%;  height: 80%;  max-width: 1120px;  max-height: 730px;}#cboxInner .youtube {  position: relative;  width: 100%;  padding-top: 56.25%;}#cboxInner .youtube iframe {  position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;}#cboxMain #close {  position: absolute;  top: 17px;  right: 20px;  width: 50px;  height: 50px;  cursor: pointer;}#cboxMain #close:before, #cboxMain #close:after {  content: "";  position: absolute;  top: 50%;  left: 50%;  width: 2px;  height: 40px;  margin: -20px 0 0 -1px;  background: #FFF;}#cboxMain #close:before {  transform: rotate(45deg);}#cboxMain #close:after {  transform: rotate(-45deg);}@media only screen and (max-width:768px) {  #cboxInner {    width: calc(100% - 20px);    height: calc(100% - 20px);  }  #cboxMain #close {    top: 0;    right: 0;    width: 50px;    height: 50px;  }  #cboxMain #close:before, #cboxMain #close:after {    height: 27px;    margin: -14px 0 0 -1px;  }}/* #keyv--------------------------------------------*/#keyv {  position: relative;  margin: 0;  background: #000 url("../img/keyv_bg.jpg") no-repeat 0% 50%;  background-size: cover;  color: #FFF;  min-height: 670px;}#keyv .inner {  display: flex;  align-items: center;  justify-content: space-between;  width: 1180px;  margin: 0 auto;  /*	border: 1px solid #FFC;*/}#keyv .topimg {  width: 50%;  margin-left: -0.5em;  /*	border: 1px solid #FCC;*/}#keyv .txt {  /*	border: 1px solid #CFC;*/  display: flex;  flex-direction: column;  justify-content: center;  position: relative;  /*	width: 1180px;*/  height: 600px;  width: 47%;  /*	margin: 0 auto;*/  z-index: 3;}#keyv .pr {  font-size: 1.2em;  color: #f8f066;}#keyv .title {  line-height: 1.8;  /*	white-space: nowrap;	*/  text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);  margin-bottom: 2.5em;}#keyv .productName {  overflow: hidden;  display: block;  width: 380px;  height: 193px;  background: url(../img/logo2.png) no-repeat;  background-size: contain;  text-indent: -9999px;}#keyv .priceBox {  margin-top: 2.5em;  text-shadow: 0px 0px 5px rgba(0, 0, 0, 1);}#keyv .priceBox .limited {  color: #f8f066;  font-size: 1.2em;  font-weight: bold;  letter-spacing: 1px;  margin-bottom: 0.2em;}#keyv .priceBox .limited .bigtxt {  font-size: 2.2em;  line-height: 0;}#keyv .priceBox .innerPrice {  display: flex;  align-items: center;}#keyv .priceBox .pricetag {  color: #000;  text-shadow: none;  background-color: #f8f066;  display: inline-flex;  align-items: center;  justify-content: center;  font-size: 0.9em;  line-height: 1.4;  margin-right: 30px;  padding: 0.3em 0;  min-width: 100px;  height: 50px;  text-align: center;  position: relative;}#keyv .priceBox .pricetag:after {  content: "";  position: absolute;  top: 0;  right: -15px;  width: 0px;  height: 0px;  margin: auto;  border-style: solid;  border-color: transparent transparent transparent #f8f066;  border-width: 25px 0 25px 15px;}#keyv .priceBox .price {  display: flex;  align-items: flex-end;  letter-spacing: 1px;}#keyv .priceBox .price.small {  font-size: 0.7em;}#keyv .priceBox .price .nonTax span {  color: #f8f066;  font-size: 3.5em;  font-family: 'Oswald', sans-serif;  line-height: 1.2;}#keyv .priceBox .price .tax {  display: inline-flex;  align-items: flex-start;  flex-direction: column;  position: relative;}#keyv .priceBox .price .new {  font-size: 16px;  height: 20px;}#keyv .keyvnote {  color: #EEE;  font-size: 0.9em;  text-align: left;  line-height: 1.4;  /*	position: absolute;	bottom:1.8em;	left: 0;*/  width: 1180px;  margin: 0 auto;}#keyv .bnrVpTrial {  padding: 2em 0 0;  text-align: left;}#keyv .bnrVpTrial img {  width: 420px;}/*セール用ボタン*/#keyv .saleBan {  width: 160px;  position: absolute;  right: -1%;  top: -4%;  z-index: 15;  opacity: 0;}#keyv .saleBan a:hover {  opacity: 0.8;}.saleBan {  animation: zoomIn 0.5s cubic-bezier(0.25, 1, 0.5, 1) forwards;  animation-delay: 0.5s;}@keyframes zoomIn {  0% {    transform: scale(0.5);    opacity: 0;  }  100% {    opacity: 1;    transform: scale(1);  }}@media only screen and (max-width:768px) {  #keyv .saleBan {    width: 20vw;    right: 1%;    top: -4.5%;  }}@media only screen and (max-width:1024px) {  #keyv {    margin: 0;    background: #000 url("../img/keyv_bg.jpg") no-repeat 15% 50%;    background-size: cover;    min-height: 400px;  }  #keyv .inner {    width: auto;    flex-direction: column;  }  #keyv .topimg {    display: none;  }  #keyv .pr {    font-size: 1em;  }  #keyv .title {    margin-bottom: 1.5em;  }  #keyv:after {    right: 0%;    bottom: -30px;    width: 75%;    height: 30px;  }  #keyv .txt {    width: 100%;    height: auto;    padding: 5% 5% 1%;    text-align: center;  }  #keyv .sptopimg {    width: 70%;    margin: 2em auto 0;  }  #keyv .productName {    width: 50vw;    height: 25vw;    margin: 0 auto;    max-width: 450px;  }  #keyv .priceBox {    margin-top: 1em;  }  #keyv .priceBox .innerPrice {    justify-content: center;    line-height: 1;  }  #keyv .priceBox .innerPrice + .innerPrice {    margin-top: 1em;  }  #keyv .priceBox .price {    flex-direction: column;    align-items: flex-start;    letter-spacing: 0;  }  #keyv .priceBox .price .new {    top: 17%;    right: 16%;  }  #keyv .priceBox .price .tax {    align-items: center;    flex-direction: row;  }  #keyv .keyvnote {    text-align: left;    line-height: 1.2;    width: 100%;    margin: 0 auto;    padding: 1em 1em;    right: 0;  }}@media only screen and (max-width:450px) {  #keyv .sptopimg {    width: 100%;  }  #keyv .priceBox .limited {    font-size: 0.9em;    letter-spacing: 0;  }  #keyv .priceBox .innerPrice + .innerPrice {    margin-top: 0.5em;  }  #keyv .priceBox .innerPrice .pricetag {    transform: scale(0.8);    margin-right: 10px;  }  #keyv .priceBox .price .nonTax span {    font-size: 3em;  }  #keyv .priceBox .price .new {    font-size: 12px;    height: 16px;  }  #keyv .keyvnote {    position: static;    font-size: 0.8em;  }  #keyv .bnrVpTrial {    padding: 1em 0 0;    text-align: center;  }  #keyv .bnrVpTrial img {    width: auto;  }}.academicBox {  text-align: center;  margin-top: 3em;}.academicBox p {  letter-spacing: 2px;  font-weight: 700;}.academicBox a:hover, .academicBox p:hover {  transition: .3s;  opacity: 0.7;}/* Sold Out Banner--------------------------------------------*/.soldout-container {  position: absolute;  z-index: 20;  pointer-events: none;  bottom: 7em;  right: 11em;  width: 20%;  rotate: 4deg;}@media only screen and (max-width: 1024px) {  .soldout-container {    bottom: 7em;    left: 50%;    width: 10%;  }}@media only screen and (max-width:768px) {  .soldout-container {    bottom: 6em;    left: 50%;    width: 15%;  }}@media only screen and (max-width:458px) {  .soldout-banner {    top: 35%;    left: 5%;    width: 17%;  }}/* #banLink--------------------------------------------*/#banLink {  margin: 2em auto 0;  padding: 0 1em;}#banLink img {  width: 100%;  max-width: 720px;}#banLink a:hover img {  transition: 0.3s;  opacity: 0.7;}@media only screen and (max-width:768px) {  #banLink {    margin-top: 1em;  }}/* #feature--------------------------------------------*/#feature {  padding: 6em 0 6em;}#feature .baseWidth {  max-width: 1280px;}#feature .featureLink {  text-align: center;  width: 1000px;  margin: 0 auto 3em;}#feature .featureLink li {  /*white-space: nowrap;*/  display: inline-flex;  margin-bottom: 1.4em;  margin-right: 0.5em;}#feature .featureLink li:first-child {  margin-left: -100px;}#feature .featureLink li:last-child {  margin-right: -100px;}#feature .featureLink li a {  border: 1px solid #c5c6cb;  transform: skewX(-15deg);  position: relative;  display: flex;  align-items: center;}#feature .featureLink li a:hover {  border-color: #004a88;  background-color: #f8f8f8;}#feature .featureLink li a:hover {  color: #004a88;  border-color: #004a88;  background-color: #f8f8f8;  transition: all 0.3s ease 0s;}#feature .featureLink li a:hover .number {  background: #004a88;  transition: all 0.3s ease 0s;}#feature .featureLink li a:after {  position: absolute;  margin: auto;  content: "";  vertical-align: middle;  top: 5px;  right: 12px;  width: 10px;  height: 8px;  border-bottom: 2px solid #004a88;  border-right: 2px solid #004a88;  -webkit-transform: rotate(39deg);  transform: rotate(39deg);}#feature .featureLink .number {  color: #FFF;  font-family: 'Roboto', sans-serif;  font-style: italic;  padding: 2em 1.5em 1em 1.3em;  background: #003561;}#feature .featureLink .number .featureNo {  position: relative;  font-size: 3em;  line-height: 1;  display: flex;  align-items: center;  transform: skewX(15deg)}#feature .featureLink .number .featureNo:before {  content: 'FEATURE';  font-size: 12px;  letter-spacing: 0.1em;  font-weight: bold;  position: absolute;  top: -14px;  left: 4px;}#feature .featureLink .featuretxt {  letter-spacing: 0.1rem;  line-height: 1.6;  margin: 0 2em;  transform: skewX(15deg);  text-align: left;}#feature .featurePoint {  position: relative;  background: #f8f8f8;  padding: 5em 5em;  margin-bottom: 3em;  overflow: hidden;}#feature .featurePoint:before {  content: '';  position: absolute;  top: 0;  left: -15%;  width: 70%;  height: 100%;  background: #e0edf7;  -webkit-transform-origin: left center;  -ms-transform-origin: left center;  transform-origin: left center;  -webkit-transform: skewX(-15deg);  -ms-transform: skewX(-15deg);  transform: skewX(-15deg);  z-index: 1;}#feature .featureTitle {  position: relative;  display: flex;  align-items: center;  margin-bottom: 2em;  z-index: 3;}#feature .featureTitle .txtTitle {  font-size: 2.2em;  letter-spacing: 0.1rem;  margin-bottom: 0.5em;  font-weight: normal;  line-height: 1.6;  flex-grow: 2;  margin-left: 2em;}#feature .featureTitle .txtTitle .normal {  font-size: 1rem;}#feature .featureTitle .number {  color: #003561;  font-family: 'Roboto', sans-serif;  font-style: italic;  font-size: 1em;  line-height: 0;  position: relative;  margin-top: 2em;}#feature .featureTitle .number .featureNo {  font-size: 5em;}#feature .featureTitle .number:before {  content: 'FEATURE';  width: 100%;  height: 30px;  text-align: center;  letter-spacing: 0.1em;  font-weight: bold;  position: absolute;  top: -50px;  left: 8px;}#feature .featureCont {  display: flex;  align-items: flex-start;}#feature .pic {  width: 65%;  max-width: 640px;}#feature .txt {  width: 50%;  background: #FFF;  padding: 3em 3em 2em;  box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.2);  margin-top: 2em;  margin-left: -3%;  z-index: 4;  position: relative;}#feature .featurePoint {  flex-direction: row-reverse;}#feature .featurePoint .pic img {  position: relative;  z-index: 1;  width: 100%;}#feature .featurePoint.overImg .featureCont .pic {  margin-bottom: 1em;}#feature .jsnano {  width: 90%;  margin: 4em auto 0;  background-color: #FFF;  display: flex;  align-items: center;  justify-content: flex-start;  position: relative;  z-index: 2;}#feature .jsnano .pht {  flex-basis: 40%;}#feature .jsnano .pht img {  width: 100%;}#feature .jsnano .poTxt {  flex-basis: 65%;  padding: 0.5em 2.4em;}#feature .jsnano .poTxt p {  font-size: 0.9em;}#feature .jsnano .poTxt .jsnabout {  font-size: 1.2em;  margin: 0 0 0.2em;}#feature .movie {  max-width: 700px;  margin: 0 auto 2em;}#feature .movie .headline2 {  color: #0076b3;  font-size: 2em;  letter-spacing: 1px;  text-align: center;  margin: 1em 0 0.2em;}@media only screen and (max-width:1024px) {  #feature {    padding: 4em 0;  }  #feature .featureLink {    text-align: left;    width: auto;  }  #feature .featureLink li {    display: block;    width: 80%;    margin: 0 auto 1em;  }  #feature .featureLink li:first-child {    margin-left: auto;  }  #feature .featureLink li:last-child {    margin-right: auto;  }  #feature .featureCont {    display: block;  }  #feature .featurePoint {    padding: 3em 2em;  }  #feature .featureTitle {    margin-bottom: 1em;  }  #feature .featureTitle .number {    font-size: 0.8em;  }  #feature .featureTitle .number:before {    top: -35px;  }  #feature .featureTitle .txtTitle {    font-size: 1.6em;    margin-left: 1.6em;  }  #feature .pic {    width: 100%;    max-width: none;  }  #feature .txt {    width: 100%;    padding: 1.6em 2em 1em;    margin: 0;    box-shadow: none;  }  #feature .featureCont .pic img {    width: 100%;  }  #feature .jsnano {    width: 90%;    display: block;  }  #feature .jsnano .poTxt {    padding: 1em 2em;  }}/* #expfun--------------------------------------------*/#expfun {  padding: 6em 0;  background: #e1eef8 linear-gradient(to bottom, #e3f3ff, #d2f0ff);}#expfun .baseWidth {  max-width: 1180px;}#expfun .exptool {  display: flex;  flex-wrap: wrap;  justify-content: space-between;  align-items: flex-start;  margin-bottom: 3em;  padding: 2em;  border-radius: 3px;  background-color: rgba(255, 255, 255, 0.60);  box-shadow: 0px 1px 6px rgba(100, 100, 100, .1);}#expfun .exptool img {  width: 100%;}#expfun .exptool .wide {  width: 100%;}#expfun .exptool .leftBox, #expfun .exptool .rightBox {  float: none;  width: 49%;}#expfun .exptool .title {  color: #004a88;  font-size: 1.8em;  letter-spacing: 0.1rem;  font-family: 'Roboto', sans-serif;  border-bottom: 1px solid #004a88;  line-height: 1.5;  padding-right: 0.3em;  display: inline-block;}#expfun .exptool .no {  font-size: 1.4em;  font-style: italic;  padding-right: 0.2em;}#expfun .exptool .poTxt {  font-size: 1.2em;  font-weight: bold;  margin: 1em 0 0.5em;}#expfun .exptool .usagefile {  text-align: center;  padding: 1.5em 0;  background: #FFF;  border: 1px solid #DDD;}#expfun .exptool .usageTxt {  margin-top: 1em;  font-weight: bold;  color: #004a88}#expfun .exptool .usageTxt:first-child {  margin-top: 0;}#expfun .exptool .bluebold {  font-weight: bold;  padding-left: 1em;}#expfun .exptool .bluebold:first-child {  padding-left: 0;}#expfun .exptool.newtool {  border: #004a88 8px solid;  background-color: rgba(255, 255, 255, 1);}#expfun .exptool .newtool {  margin: 2em 0 0;}#expfun .exptool .newIcon {  color: #333;  font-size: 1.2em;  font-weight: 900;  letter-spacing: 1px;  margin: 0 0.5em 0.5em 0;}#expfun .exptool .newIcon span {  padding: 0 0.8em;  background-color: rgba(255, 246, 8, .85);  border-radius: 4px;  display: inline-block;}#expfun #poseMeasure.exptool .cap {  display: flex;  flex-wrap: wrap;  justify-content: center;  width: 100%;  margin-top: 2em;}#expfun #poseMeasure.exptool .box {  width: 49%;  text-align: center;}#expfun #poseMeasure.exptool .box:first-of-type {  margin-right: 2%;}#expfun #poseMeasure.exptool .arrow {  width: 52%;  border: 4px solid #4392d3;  border-top: 0;  text-align: center;}#expfun #poseMeasure.exptool .arrow img {  width: 30px;  transform: translateY(100%);}#expfun #poseMeasure.exptool dt {  max-width: 240px;  margin: 0 auto 0.5em;  text-align: center;  background: #4392d3;  font-size: 1.2em;  font-weight: bold;  color: #FFF;}#expfun #poseMeasure.exptool dd {  margin-bottom: 0.5em;}#expfun #poseMeasure.exptool .csv {  width: 60%;  margin: 60px auto 0;}#expfun .typeBeta {  padding: 1em 2em 1.5em;  margin-top: 2em;  background-color: #325DB4;  border-radius: 10px;}#expfun .typeBeta .title {  font-size: 1.4em;  font-weight: bold;  margin-bottom: 0.4em;}#expfun .toolimg .note {  color: #666;  font-size: 0.9em;  margin-top: 0.2em;}#expfun .csvOut {  width: 64%;  padding: 2em;  margin: 0 auto;  border-radius: 10px;  display: flex;  align-items: center;  justify-content: center;  background-color: #FFF;}#expfun .csvOut .pic {  flex-basis: 70px;  margin-right: 2em;}#expfun .csvOut .poTxt {  font-size: 1.2em;  font-weight: bold;  margin: 0 0 0.2em;}@media only screen and (max-width:1024px) {  #expfun {    padding: 4em 0;  }  #expfun .exptool {    flex-direction: column;    width: 90%;    margin: 0 auto 2em;  }  #expfun .exptool .leftBox, #expfun .exptool .rightBox {    width: 100%;    margin: 0;  }  #expfun .exptool .usagefile, #expfun .exptool .toolimg .pic {    margin-top: 1em;  }  #expfun .exptool .bluebold {    padding: 0;  }  #expfun .exptool.newtool .newIcon {    margin-bottom: 0.5em;  }  #expfun #poseMeasure.exptool .csv {    width: 100%;  }  #expfun .csvOut {    width: 80%;    padding: 1.5em;    margin-top: 3em;  }  #expfun .csvOut .pic {    flex-basis: 60px;    margin-right: 1.6em;  }  #expfun .csvOut .poTxt {    font-size: 1.2em;    font-weight: bold;    margin: 0 0 0.2em;  }}@media only screen and (max-width:450px) {  #expfun #poseMeasure.exptool .arrow {    width: auto;    margin-top: -30px;    border: 0;  }  #expfun #poseMeasure.exptool .arrow img {    transform: translateY(0%);  }  #expfun #poseMeasure.exptool .box {    width: 100%;    margin-bottom: 2em;  }  #expfun #poseMeasure.exptool .csv {    margin-top: 10px;    margin-bottom: 0;    text-align: left;  }}/* #lineup--------------------------------------------*/#lineup {  padding: 6em 0;  background: #FFFFFF;}#lineup table {  width: 100%;  border-collapse: collapse;  text-align: left;}#lineup th, #lineup td {  padding: 1em;  border: 1px solid #CCC;  vertical-align: top;}#lineup th {  background: #d2f0ff;  font-weight: 600;}#lineup .nocell {  border: none;}/*#lineup .sub {	width: 0;	background: #F6F6F6;	white-space: nowrap;}*//* #main user--------------------------------------------*/#vpuser {  padding: 6em 0 0;  background: #F8F8F8;}#vpuser .headline {  margin-bottom: 1.2em;}#vpuser .headline span {  font-size: 0.8em;  font-weight: normal;  padding: 0 0.4em;  background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #f8f066 0%) repeat scroll 0 0;  display: inline;}#vpuser .type {  font-size: 1.3em;  letter-spacing: 0.1rem;  padding: 0.2em 0;}#vpuser .otherUser {  display: flex;  flex-direction: row;  justify-content: space-between;  margin-bottom: 3em;}#vpuser .otherUser .userBox {  width: 30%;}#vpuser .otherUser .textxt {  margin-top: 0.6em;}#education {  margin: 0 1em 6em;}#education .headline2 {  color: #004A88;  font-size: 1.7em;  /*	font-weight: 700;*/  text-align: center;  margin-bottom: 1em;}#education ul {  display: flex;  flex-wrap: wrap;  align-items: stretch;  border-top: 1px solid #CCC;  border-left: 1px solid #CCC;}#education li {  font-size: 0.8em;  text-align: center;  width: 16.666%;  padding: 0.4em;  border-right: 1px solid #CCC;  border-bottom: 1px solid #CCC;}#vpuser .aiData {  color: #FFF;  background: #002544 url("../img/bg_user.jpg") repeat 50% 0;  background-attachment: scroll;  background-size: contain;  overflow: hidden;  position: relative;  padding: 4em 0 4.4em;}#vpuser .aiData:before {  content: '';  position: absolute;  top: 0;  left: -12%;  width: 64%;  height: 100%;  background: rgba(0, 74, 136, 0.9);  -webkit-transform-origin: left center;  -ms-transform-origin: left center;  transform-origin: left center;  -webkit-transform: skewX(-15deg);  -ms-transform: skewX(-15deg);  transform: skewX(-15deg);}#vpuser .aiData .txt {  height: 100%;  width: 50%;}#vpuser .aiData .txt .title {  font-size: 2em;  line-height: 1.8;  margin-bottom: 0.8em;}#vpuser .aiData .contact {  margin-top: 2.2em;}#vpuser .aiData .contact a {  color: #004a88;  padding: 0.5em 4em 0.5em 1em;  background-color: #FFF;}@media only screen and (max-width:1024px) {  #vpuser {    padding: 4em 0 0;  }  #vpuser .otherUser {    display: block;  }  #vpuser .otherUser .userBox {    width: 90%;    margin: 0 auto 3em;  }  #vpuser .otherUser .pic img {    width: 100%;  }  #education li {    width: 33.333%;  }  #vpuser .aiData:before {    top: 0;    left: 5%;    width: 90%;    height: 100%;  }  #vpuser .aiData .txt {    height: 100%;    width: 80%;    margin: 0 auto;  }  #vpuser .aiData .txt .title {    font-size: 1.8em;    text-align: center;  }  #vpuser .aiData .contact a {    width: 100%;    padding: 0.5em 1em 0.5em 1em;  }}/* #guide--------------------------------------------*/#guide {  background: #e1eef8 linear-gradient(to bottom, #e3f3ff, #d2f0ff);  padding: 6em 0;}#guide .baseWidth {  max-width: 1180px;}#guide .headline {  margin-bottom: 2rem;}#guide .toptext {  width: 80%;  text-align: center;  margin: 0 auto 4em;}#guide .flow {  display: flex;  justify-content: space-between;  /*align-items: stretch;*/}#guide .flow li {  flex-basis: 17%;  margin: 1.9em 0 0;  padding: 0 1.8em 2.5em;  background: #FFF;  line-height: 1.8;  position: relative;}#guide .flow li::before {  content: '';  position: absolute;  top: 5%;  right: -2em;  width: 15px;  height: 2px;  margin-top: -6px;  background-color: #004a88;  -webkit-transform: translateY(-50%) rotate(45deg);  transform: translateY(-50%) rotate(45deg);}#guide .flow li::after {  content: '';  position: absolute;  top: 5%;  right: -2em;  width: 80px;  height: 2px;  background-color: #004a88;  -webkit-transform: translateY(-50%);  transform: translateY(-50%);}#guide .flow li:last-child::before, #guide .flow li:last-child::after {  display: none;}#guide .flow .no {  color: #FFF;  font-size: 1.4em;  font-family: 'Roboto', sans-serif;  display: flex;  justify-content: center;  align-items: center;  position: relative;  top: -0.6em;}#guide .flow .no span {  height: 60px;  width: 60px;  border-radius: 50%;  line-height: 60px;  text-align: center;  background: #004a88;}#guide .flow .title {  text-align: center;  font-size: 1.1em;  font-weight: bold;  min-height: 110px;  margin-bottom: 0.6em;  display: flex;  justify-content: center;  align-items: center;}#guide .flow .txt {  color: #666;}/*#guide .flow a,#guide .flow a:hover,#guide .flow a:visited{	color:#0e6bc1;	text-decoration:underline;}#guide .flow a:hover{	text-decoration: none;}*/#guide .flowNote {  font-size: 0.8em;  line-height: 1.8;  margin-top: 1em;}@media only screen and (max-width:1024px) {  #guide {    padding: 4em 0;  }  #guide .toptext {    margin-bottom: 2em;  }  #guide .flow {    display: block;    width: 90%;    margin: 0 auto;  }  #guide .flow li {    margin: 1em 0 0;    padding: 1.5em 1.2em 1.5em;  }  #guide .flow li::before, #guide .flow li::after {    display: none;  }  #guide .flow .title {    min-height: inherit;  }  #guide .flow .no {    position: absolute;    top: 50%;    left: -0.5em;    margin-top: -20px;  }  #guide .flow .no span {    font-size: 0.8em;    height: 40px;    width: 40px;    line-height: 40px;  }  #guide .flow .title, #guide .flow .txt {    justify-content: stretch;    padding-left: 30px;  }  #guide .flowNote {    width: 90%;    margin: 1em auto 0;  }}/* #package--------------------------------------------*/#package {  padding: 6em 0;}#package .headline {  margin-bottom: 1em;}#package .headline2 {  text-align: center;  margin-bottom: 0.8em;}#package .headline2 span {  font-size: 1.7em;  padding: 0 0.4em;  /*background: linear-gradient(transparent 70%,#fffa81 70%);*/  display: inline;  letter-spacing: 2px;  color: #0076b3;}/*#package .specComparison{	margin-bottom: 4em;}#package .specComparison table {	width: 100%;	border-collapse: collapse;	text-align: left;}#package .specComparison th,#package .specComparison td {	padding: 1em;	border: 2px solid #FFF;	vertical-align: top;	background-color: #F7F8F9;	line-height: 1.5;}#package .specComparison th {	background: #9EA1AF;	color:#FFF;	text-align: center;	vertical-align: middle;}#package .specComparison tr:nth-child(odd) td{	background-color: #EEF1F2;}#package .specComparison .cType01,#package .specComparison .cType02{	width: 40%;	padding: 0.7em 1em;}#package .specComparison .cType01 span,#package .specComparison .cType02 span{	font-size: 1.2em;	font-weight: 700;	letter-spacing: 1px;	display: flex;	align-items: center;	justify-content: center;}#package .specComparison .cType01{	background: #26A5B9;}#package .specComparison .cType02{	background: #3F74C4}#package .specComparison .nocell{	border: none;	background-color: #FFF !important;}*/#package .specComparison {  margin-bottom: 4em;}#package .specComparison .new {  background: #f9f969;  color: #3f74c4;}#package .specComparison table {  width: 100%;  border-collapse: collapse;  text-align: left;}#package .specComparison th, #package .specComparison td {  padding: 0.5em 1em;  border: 2px solid #FFF;  vertical-align: middle;  background-color: #F7F8F9;  line-height: 1.5;  text-align: center;}#package .specComparison th {  background: #9EA1AF;  color: #FFF;  text-align: center;  vertical-align: middle;}#package .specComparison td {  /*font-size: 1.2em;*/}#package .specComparison td div {  width: fit-content;  text-align: left;  margin: 0 auto;}#package .specComparison td strong {  font-size: 1.2em;}#package .specComparison td .small {  font-size: 16px;  font-weight: normal;  color: #888;}#package .specComparison tr:nth-child(odd) td {  background-color: #EEF1F2;}#package .specComparison .cType01, #package .specComparison .cType02 {  width: 40%;  padding: 0.7em 1em;}#package .specComparison .cType01 span, #package .specComparison .cType02 span {  font-size: 1.2em;  font-weight: 700;  letter-spacing: 1px;  display: flex;  align-items: center;  justify-content: center;}#package .specComparison .cType01 {  background: #26A5B9;}#package .specComparison .cType02 {  background: #3F74C4}#package .specComparison .nocell {  border: none;  background-color: #FFF !important;}#package .packBox {  margin-bottom: 1em;  background-color: #E4F5FF;  padding: 1.5em 2em;  /*  border: 1px solid #CCC;*/}#package .packBox.soft {  padding-bottom: 3em;}#package .packBox.hard {  margin-bottom: 3em;  /*	padding-top: 5em;*/}#package .innerPack {  display: flex;  flex-wrap: wrap;  justify-content: space-between;}#package .soft .innerPack {  justify-content: space-around;  /*	padding: 0 2em;*/}#package .packBox .plusBox {  margin: -7.5em auto 1.5em;  text-align: center;}#package .packBox .plusBox img {  max-width: 70px;}#package .packBox .packTxt {  background-color: #FFF;  padding: 1em 2em;}#package .packBox .innerPack .packTxt {  width: 50%;  padding: 1.5em 2em;  margin: 1em auto 0;}#package .packBox .innerPack .packTxt.noHard {  width: max-content;  max-width: 100%;  margin: 0 auto;  border: 0;  padding: 0;}#package .packTitle {  text-align: center;  font-size: 1.6em;  margin-bottom: 1.2em;  font-weight: 700;}#package .packTitle:after {  content: '';  display: block;  width: 60px;  height: 3px;  margin: 0 auto;  background-color: #004a88;}#package .packBox .hardTitle {  color: #FFF;  font-weight: 500;  text-align: center;  font-size: 1.4em;  margin-bottom: 1em;  background: #26a5b9;  display: flex;  justify-content: center;  align-items: center;}#package .specComparison .new, #package .packBox .hardTitle .new {  background: #F9F96A;  color: #3f74c4;}#package .packBox .hardTitle.orin {  background: #3f74c4;}/*#package .packBox .packTitle .new { transform: translateY(-15%); }*/#package .packBox .packImg {  width: 100%;  margin: 0 auto;  padding-top: 1em;}#package .packTxt ul {  margin-top: 1.4em;}#package .packTxt li {  padding-left: 1em;  text-indent: -1em;}#package .packTxt .packIn {  margin-top: 0;  font-size: 1.1em;  list-style: inside;}#package .packTxt.noHard .packIn {  width: max-content;  max-width: 100%;  margin: 0 auto;  font-size: 1.3em;}#package .packTxt .packIn .pInTitle {  color: #004a88;  font-weight: bold;  list-style: none;}#package .packTxt .txtLink {  color: #000;  border-color: #000;}#package .cap {  color: #666;  font-size: 0.9em;  line-height: 1.6;  margin-top: 1em;}#package .cap li + li {  margin-top: 0.1em;}#package .packBtn .toConTxt {  color: #004a88;  font-size: 1.1em;  font-weight: bold;  letter-spacing: 0.1em;  margin-bottom: 0.5em;}#package .packBtn .toConTxt span {  position: relative;}#package .packBtn .toConTxt span::before {  content: '';  position: absolute;  bottom: 30%;  left: -2em;  width: 30px;  height: 2px;  margin-top: -6px;  background-color: #004a88;  -webkit-transform: translateY(-50%) rotate(55deg);  transform: translateY(-50%) rotate(55deg);}#package .packBtn .toConTxt span::after {  content: '';  position: absolute;  bottom: 30%;  right: -2em;  width: 30px;  height: 2px;  margin-top: -6px;  background-color: #004a88;  -webkit-transform: translateY(-50%) rotate(125deg);  transform: translateY(-50%) rotate(125deg);}#package .packBtn .btnType01 a {  font-size: 1.4em;  display: inline-block;  font-weight: bold;  line-height: 1.6;  padding: 0.2em 2.6em 0.6em;}#package .packBtn .btnType01 a span {  font-family: 'Roboto', sans-serif;  font-size: 0.6em;}@media only screen and (max-width:1024px) {  #package {    padding: 4em 0;  }  #package .specComparison {    margin: 0 auto 2em;    width: 90%  }  #package .packBox {    display: block;    width: 90%;    margin: 0 auto 2em;  }    #package .soft .innerPack {    justify-content: flex-start;  }  #package .packBox .innerPack .packTxt {    width: auto;    padding: 1em 1em;  }  #package .packBox .packTxt:not(:last-of-type) {    margin-bottom: 1em;  }  #package .packBox .packTxt ul {    /*    max-width: max-content;    margin-left:auto;    margin-right:auto;*/    padding: 0 1em;  }  #package .packTxt.noHard .packIn {    font-size: 1.1em;  }  #package .packBtn .toConTxt {    margin-top: 2em;  }  #package .packBtn .btnType01 a {    width: 80%;    padding: 0.2em 0.5em 0.8em;  }  #package .specComparison .cType01 span, #package .specComparison .cType02 span {    flex-direction: column;  }  #package .specComparison .cType01 .new, #package .specComparison .cType02 .new {    margin-right: 0;  }  #package .specComparison th, #package .specComparison td {    font-size: 1em;  }}/* #package_soldout--------------------------------------------*/.table-soldout-container {  position: relative;}.table-soldout-banner {  position: absolute;  z-index: 50;  pointer-events: none;  top: 8em;  left: 50%;  width: 10em;  transform: translate(-50%, -20%);  rotate: 10deg;  filter: drop-shadow(4px 4px 6px rgba(0, 0, 0, 0.4));}/* レスポンシブ調整：画面が狭い時 */@media only screen and (max-width: 768px) {  .table-soldout-banner {    width: 150px; /* スマホでは少し小さく */    top: 100px; /* 縦に長い表の場合は位置を固定値で調整するのもアリです */  }}/* #vpseries--------------------------------------------*/#vpseries {  background: #168cd0 url(../img/bg_pattern.png) repeat 50% 50%;  padding: 6em 0;  position: relative;}#vpseries:after {  content: "";  position: absolute;  right: 0;  top: 0;  left: 0;  width: 0px;  height: 0px;  margin: auto;  border-style: solid;  border-color: #FFF transparent transparent transparent;  border-width: 35px 90px 0 90px;}#vpseries .baseWidth {  max-width: 1180px;}#vpseries .headline {  color: #FFF;  font-size: 2.3em;  font-weight: normal;  margin-bottom: 0.5em;}#vpseries .pushcom {  font-size: 1.6em;  color: #f8f066;  margin-bottom: 1.5em;  font-weight: bold;  letter-spacing: 0.1em;}#vpseries .packBox {  display: flex;  justify-content: space-between;  margin-bottom: 5em;}#vpseries .packBox .packTxt {  flex-basis: 48%;  background-color: rgba(255, 255, 255, 1);  padding: 2em 3em;  border-radius: 4px;}#vpseries .packBox .packTxt .pointcom {  margin-bottom: 1em;}#vpseries .packBox .packTxt .pointcom span {  font-size: 1.1em;  font-weight: bold;  letter-spacing: 2px;  padding: 0 0.6em 0.2em;  display: inline;}#vpseries .packBox .packTxt .packTitle {  font-family: 'Roboto', sans-serif;  font-size: 2.2em;  margin-bottom: 0.6em;  line-height: 1.4;}#vpseries .packTxt ul {  margin-bottom: 1.4em;}#vpseries .packTxt ul:last-child {  margin-bottom: 0;}#vpseries .packTxt li {  padding-left: 1em;  text-indent: -1em;}#vpseries .packTxt .packIn {  font-size: 1.1em;  list-style: inside;}#vpseries .packBox .greenType .pointcom span {  background: rgba(0, 0, 0, 0) linear-gradient(transparent 40%, #7ecabe 0%) repeat scroll 0 0;}#vpseries .packBox .greenType .btnType02 a {  color: #029a83;  border-color: #029a83;}#vpseries .packBox .greenType .buttonArrow span::before, #vpseries .packBox .greenType .buttonArrow span::after {  background-color: #029a83 !important;}#vpseries .packBox .blueType .pointcom span {  background: rgba(0, 0, 0, 0) linear-gradient(transparent 40%, #84b8e3 0%) repeat scroll 0 0;}#vpseries .packBox .blueType .btnType02 a {  color: #0a68b7;  border-color: #0a68b7;}#vpseries .packBox .blueType .buttonArrow span::before, #vpseries .packBox .blueType .buttonArrow span::after {  background-color: #0a68b7;}@media only screen and (max-width:1024px) {  #vpseries {    padding: 4em 0;  }  #vpseries .headline {    font-size: 1.8em;  }  #vpseries .packBox {    display: block;    width: 90%;    margin: 0 auto;  }  #vpseries .packBox .packTxt {    margin-bottom: 3em;    padding: 2em 2em;  }}/* sns--------------------------------------------*/#sns {  background: #DDD;}#sns ul {  display: flex;  justify-content: center;  padding: 1em 0;  font-size: 32px;  color: #004a88;}#sns li {  margin: 0 0.8em;}@media only screen and (max-width:1024px) {  #sns ul {    padding: 1em 0;    font-size: 20px;  }}/*======================================================	お問い合わせ / contact================================================*//* .txtLink------------------------------------------------------*/#contactSec .txtLink {  border-bottom: 1px solid #000;  color: inherit !important;}#contactSec .txtLink:hover {  border-bottom: 0;}/* .cautionBox------------------------------------------------------*/#contactSec .cautionBox {  color: #C00;}#contactSec .cautionBox {  display: flex;  justify-content: center;  padding: 2em 1em 2em 2em;  border: 1px solid #C00;}#contactSec .cautionBox li {  margin-bottom: 0 !important;  text-indent: -1em;}#contactSec .cautionBox li:before {  content: "※";}@media only screen and (max-width:1024px) {  #contactSec .cautionBox {    padding-top: 1em;    padding-bottom: 1em;  }}/* #contactSec------------------------------------------------------*/#contactSec {  padding: 5em 0;}#contactSec .baseWidth {  padding: 0 2%;}#contactSec .headline {  margin-bottom: 0.5em;}#contactSec .contactInner {  background-color: #FFF;  padding: 4% 4% 3%;  border-radius: 10px;}#contactSec .txt {  margin-bottom: 2em;  text-align: center;}@media only screen and (max-width:768px) {  #contactSec .baseWidth {    padding: 0 4%;  }  #contactSec .headline {    font-size: 1.8em;  }  #contactSec .txt, #contactSec .cautionBox {    text-align: left;  }  #contactSec .txt br {    display: none;  }}/*======================================================	ブログ記事 / blogGuid================================================*//* #blogGuid------------------------------------------------------*/#blogGuid {  background-color: #F9F9F9;  padding: 6em 0;}#blogGuid .cardLayout {  display: flex;  flex-direction: row;  justify-content: space-evenly;  flex-wrap: wrap;  max-width: 1200px;  margin: 0 auto 2em;}#blogGuid .cardLayout .item {  width: 31%;  margin-bottom: 2%;  border-radius: 4px;  position: relative;  transition: all .3s ease;  background-color: #fff;  box-shadow: 0px 1px 6px rgb(0 0 0 / 12%);  overflow: hidden;}#blogGuid .cardLayout .item:hover {  opacity: 0.8;  box-shadow: 0px 1px 2px rgb(0 0 0 / 8%);  /*	background-color: #e1eef8;*/}#blogGuid .cardLayout .item .inner {  width: 90%;  margin: 1em auto 1.2em;}#blogGuid .cardLayout .item .inner .title {  font-weight: 700;  margin-bottom: 0.5em;}#blogGuid .cardLayout .item .inner .txt {  font-size: 0.9em;  display: -webkit-box;  -webkit-box-orient: vertical;  -webkit-line-clamp: 3;  overflow: hidden;}#blogGuid .btn {  display: flex;  justify-content: center;  flex-wrap: wrap;  height: inherit;}#blogGuid .btn a {  color: #004a88;  font-size: 1rem;  display: flex;  justify-content: center;  align-items: center;  min-width: 270px;  height: 60px;  margin: 0 1em;  padding: 0 1em;  white-space: nowrap;  border: 1px solid #004a88;  transition: .2s;  border-radius: 2px;}#blogGuid .btn a:hover {  border: 1px solid #004a88;  background: #004a88;  color: #FFF;}@media only screen and (max-width:768px) {  #blogGuid {    padding: 4em 0;  }  #blogGuid .cardLayout .item {    width: 47%;    margin-bottom: 2%;  }  #blogGuid .cardLayout .item .inner .txt {    display: -webkit-box;    -webkit-box-orient: vertical;    -webkit-line-clamp: 3;    overflow: hidden;  }}/*------------------------------------------	#footer bottomBan------------------------------------------*/.bottomBan {  position: fixed;  right: -150px;  bottom: 20px;  z-index: 100;  transition: 0.5s;}.bottomBan a {  overflow: hidden;  display: block;  width: 140px;  height: 140px;  background: url("../img/sale/ban_10off_arrow.webp")no-repeat;  background-size: contain;  text-indent: -9999px;}.bottomBan a:hover {  opacity: 0.7;}.bottomBan.active {  right: 10px;  opacity: 1;}.menuOpen .bottomBan {  display: none !important;}@media only screen and (max-width:990px) {  .bottomBan {    /*		display: none; */    bottom: 10px;  }  .bottomBan a {    width: 22vw;    height: 22vw;    max-width: 120px;  }}.bottomBan.active {  animation: poyopoyo 2s ease-out infinite;  opacity: 1;}@keyframes poyopoyo {  0%, 40%, 60%, 80% {    transform: scale(1.0);  }  50%, 70% {    transform: scale(0.95);  }}