@charset "UTF-8";
/* ==========================================================================
reset
========================================================================== */
/*! minireset.css v0.0.2 | MIT License | github.com/jgthms/minireset.css */
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 {
 margin: 0;
 padding: 0;
}
h1, h2, h3, h4, h5, h6 {
 font-size: 100%;
 font-weight: normal;
 line-height: 1;
}
ul {
 list-style: none;
}
button, input, select, textarea {
 margin: 0;
 line-height: 1;
}
html {
 box-sizing: border-box;
 width: 100%;
 font-size: 62.5%;
}
* {
 box-sizing: inherit;
}
*:before, *:after {
 box-sizing: inherit;
}
img, embed, object, audio, video {
 height: auto;
 max-width: 100%;
}
iframe {
 border: 0;
}
table {
 border-collapse: collapse;
 border-spacing: 0;
}
td, th {
 padding: 0;
 text-align: left;
 line-height: 1;
}
::-moz-selection, ::selection {
 background: #F8CAC3;
}
/*webfont smooth fix with cssua.js
©https://gist.github.com/dalethedeveloper/1846552
*/
.ua-firefox.ua-desktop p, .ua-edge.ua-desktop p, .ua-ie.ua-desktop p, .ua-firefox.ua-desktop [class*="text"], .ua-edge.ua-desktop [class*="text"], .ua-ie.ua-desktop [class*="text"], .ua-firefox.ua-desktop [class*="title"], .ua-edge.ua-desktop [class*="title"], .ua-ie.ua-desktop [class*="title"] {
 transform: rotate(0.001deg);
}
/* © https://gist.github.com/larrybotha/7881691 */
.lt-ie10 img.img-responsive[src*=".svg"] {
 width: 100%;
}
/*IE9 svg fix*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
 img.img-responsive[src*=".svg"] {
  width: 100%;
 }
 /*IE10+ svg fix*/
}
body {
 font-size: 1.7rem;
 line-height: 1.53;
 /*	min-width: 1160px;*/
 font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", Verdana, Arial, Helvetica, sans-serif;
 font-weight: 400;
 font-feature-settings: "palt"; /**/
 letter-spacing: 0.1em; /**/
 color: #282828;
 background-color: #fff;
 -webkit-text-size-adjust: 100%;
 text-size-adjust: 100%;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}
#wrapper {
 position: relative;
 /*	min-width: 1160px;*/
 margin-left: auto;
 margin-right: auto;
 overflow: hidden;
}
h1, h2, h3, h4, h5, h6 {
 line-height: 1.5;
}

img {
 vertical-align: bottom;
}
a {
 outline: none;
 text-decoration: none;
 color: #314878;
 -webkit-transition: 0.2s;
 -o-transition: 0.2s;
 transition: 0.2s;
}
a:hover {
 outline: none;
 //text-decoration: none;
// color: #000;
 opacity: 0.8;
}
@media only screen and (max-width: 768px) { /* Small Devices, Tablets */
 body {
  min-width: inherit;
 }
}
/* ========================================================================== 
LAYOUT
========================================================================== */
/*-------------
header
---------------*/
.header {
  position: fixed;
  width: 100%;
  height: 96px;/*88px;*/
  z-index: 100;
  background-color: #fff;/* rgba(255, 255, 255, 0.9);*/
}
.header-logo {
  position: absolute;
  top: 20px;/*40px;*/
  left: 40px;
  width: 100%;
  max-width: 360px;
  transition: all .3s;
}
.header-logo a {
  position: relative;
  display: block;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.header-logo a:hover {
  opacity: 0.7;
  text-decoration: none;
}
.header-menu-inner {
  visibility: hidden;
  position: relative;
  z-index: 100;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
/* スライドアニメーション */
.header {
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.header-menu-inner.open {
  visibility: visible;
  -webkit-transition: opacity .24s ease;
  transition: opacity .24s ease;
}
#header-menu-bg {
  display: block;
  position: fixed;
  top: 96px;/*88px;*/
  z-index: 100;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  visibility: hidden;
  opacity: 0;
  cursor: pointer;
  transition: all .6s;
}
.header-menu-inner.open #header-menu-bg {
  visibility: visible;
  opacity: 1;
}
/** nav-toggle **/
#nav-toggle {
  display: block;
  position: absolute;
  right: 40px;
  top: 20px;/*40px;*/
  width: 56px;
  height: 56px;
  background-color: #1d3160;
  cursor: pointer;
  z-index: 101;
  padding: 0 14px;
  transition: all .4s;
}
#nav-toggle div {
  position: relative;
}

#nav-toggle span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #fff;
  left: 0;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
  top: 19px;
}
#nav-toggle span:nth-child(2) {
  top: 27px;
}
#nav-toggle span:nth-child(3) {
  top: 36px
}
/* #nav-toggle 切り替えアニメーション */
#nav-toggle.on span:nth-child(1) {
  top: 27px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}
#nav-toggle.on span:nth-child(2) {
  width: 0;
  left: 50%;
}
#nav-toggle.on span:nth-child(3) {
  top: 27px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
/* === g-nav ======================== */
.g-nav-wrapper {
  visibility: hidden;
  opacity: 0;
  position: fixed; /* absolute */
  top: 0;/*8px;*/
  right: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
 /* max-width: 420px;*/
  width: 100%;
  height: 100vh;
  font-size: 0;
  text-align: center;
  background-color: #1d3160;
  transition: all .6s;
  z-index: 998;
}
.header-menu-inner.open .g-nav-wrapper {
  visibility: visible;
  opacity: 1;
}
.g-nav {
  position: relative;
  top:50%;
  transform: translateY(-50%);
  margin: auto;
  width: 100%;
  max-width: 670px;
  height: auto;
  overflow: hidden;
}
.g-nav li {
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: left;
  font-family: 'Noto Serif JP', serif;
  font-size: 2.4rem;
  border-bottom: solid 1px #4a5a80;
}
.g-nav li:last-child{
  border-bottom: none;
}
.g-nav li a {
  display: block;
  position: relative;
  padding: 1em 2em;
  color: #fff;
}
.g-nav li a::before {
  position: absolute;
  content: '';
  top: 50%;
  transform: translateY(-50%);
  left: 10px;
  width: 15px;
  height: 20px;
  background: url("../../common/images/ico_arrow2.svg");
  background-size: contain;
    -moz-transition: 0.2s;
  -o-transition: 0.2s;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
.g-nav li a:hover {
 // background-color: #00AEEF;
}
.g-nav li a:hover::before {
  position: absolute;
  content: '';
  top: 50%;
  left: 15px;
}
.g-nav-sub{
padding-left: 50px;
}
.g-nav-sub li{
border-bottom: none;
}

/*-------------
footer
---------------*/
.footer {
 clear: both;
 background-color: #282828;
 color: #fff
}
.copyright {
 padding: 40px 20px;
 text-align: center;
 font-size: 1.4rem;
}
/* ========================================================================== 
parts
========================================================================== */
.container {
 position: relative; /*margin-top:220px; 150+70*/
 /*	padding-top: 130px; */
}
/*section*/
.section {
 clear: both;
 margin: 0 auto;
 /*padding: 100px 0;*/
 position: relative;
 z-index: 10;
}
.col-inner {
 display: block;
 position: relative;
 /*  width: 94%; 100%;*/
 max-width: 1040px; /* 960px 1280 1160px;*/
 margin: 0 auto;
 padding: 0 40px;
}
.bg-blu {
 background-color: #2D3E97;
}
.bg-pgy {
 background-color: #F2F5F7;
}
.clr-wh {
 color: #fff !important;
}
/*em,*/
.clr-red {
 color: #b72700;
}
/* === title ======================== */
/* セクションタイトル === */

.en{
font-family: 'Noto Serif JP', serif;
//font-family: 'Bentham', serif;
}
.min {
font-family: 'Noto Serif JP', serif;
}
.section-title {
 margin: 110px auto 70px;
 text-align: center;
 font-weight: 700;
 font-size: 3.4rem;
 line-height: 1.1;
 letter-spacing: 0.075em;
 color: #000;
}
.section-title .en {
 display: inline-block;
  margin-bottom: 20px;
 font-size: 6.0rem;
 letter-spacing: 0.1em;
 background : -moz-linear-gradient(0% 50% 0deg,rgba(27, 57, 128, 1) 0%,rgba(69, 140, 200, 1) 100%);
  background : -webkit-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  background : -webkit-gradient(linear,0% 50% ,100% 50% ,color-stop(0,rgba(27, 57, 128, 1) ),color-stop(1,rgba(69, 140, 200, 1) ));
  background : -o-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  background : -ms-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#1B3980', endColorstr='#458CC8' ,GradientType=0)";
  background : linear-gradient(90deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
   -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
/* IE hack */
@media all and (-ms-high-contrast: none) {
.section-title .en {
    background: transparent !important;
    color: #009FE8;
  }
}
.section-title .min {
 display: block;
 font-weight: 500;
 font-size: 2.4rem;
}

.index-title{
  position: relative;
  margin-bottom: 50px;
  height: 140px;
  line-height: 140px;
  text-align: center;
  font-size: 3.2rem;
  background-color: #1b397f;
  color: #fff;
}
.index-title::after{
  position: absolute;
  content: '';
  bottom: -47px;
  left: 50%;
  transform: translateX(-50%);
  width: 160px;
  height: 48px;
  background: url(../../common/images/bg_index.svg) no-repeat;
  background-size: contain;
}
.index-title.pr2{
  background-color: #458cc8;
  color: #fff;
}
.index-title.pr2::after{
  background: url(../../common/images/bg_index2.svg) no-repeat;
  background-size: contain;
}


/* === top-area ======================== */
.section-top {
 position: relative;
 top: 0;
 width: 100vw;
 max-height: 950px;
 background: url("../../common/images/bg_mv.jpg") no-repeat center 0;
 background-size: cover;
 padding-bottom: 300px;
}
.section-top::before {
 /* (画像の高さ / 画像の横幅) × 100 
padding-top: calc(3360/1900*100%);
  display: block;
  content: '';*/
}
.top-area {
 position: relative;
 height: 950px;
}

.top-title-area {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  margin: 0 auto;
  text-align: center;
  width: 50%; 
  /* padding-bottom: 296px; */
}
.top-area-image {
  margin: 0 auto;  
  max-width: 630px;
  }
.top-title-lead {
  margin-top: 20px;
 text-align: center;
 font-size: 2.6rem;
 font-weight: 700;
 letter-spacing: 0.16em;
}
.top-title-lead span {
  position: relative;
}
.top-title-lead span::before {
  position: absolute;
  content: "";
  left:-80px;
  width: 70px;
  height: 1px;
  top: 50%;
  background-color: #282828;
}
.top-title-lead span::after {
  position: absolute;
  content: "";
  right:-70px;
  width: 70px;
  height: 1px;
  top: 50%;
  background-color: #282828;
}
.top-btn-area{
  position: relative;
  margin: 50px auto;
  max-width: 320px;
}
.m-btn {
 position: relative;
 display: block;
 padding: 20px 20px;
 width: 100%;
 text-align: center;
 /*height: 64px;*/
 font-size: 1.6rem;
 font-weight: bold;
 color: #fff !important;
background : -moz-linear-gradient(0% 50% 0deg,rgba(27, 57, 128, 1) 0%,rgba(69, 140, 200, 1) 100%);
  background : -webkit-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  background : -webkit-gradient(linear,0% 50% ,100% 50% ,color-stop(0,rgba(27, 57, 128, 1) ),color-stop(1,rgba(69, 140, 200, 1) ));
  background : -o-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  background : -ms-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#1B3980', endColorstr='#458CC8' ,GradientType=0)";
  background : linear-gradient(90deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1B3980',endColorstr='#458CC8' , GradientType=1);
 border-radius: 2em;
}

/*== top-product-wrap ====*/
.top-product-wrap{
  position: absolute;
  bottom:0;
  height: 296px;
  width:100vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top-product {
  width: 50%;
}
.top-product.pr1{
  background-color: #1b3980;
}
.top-product.pr2 {
  background-color: #458cc8;
}
.top-product a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 296px;
}
.top-product-image{
  margin-top: -50px;
  margin-left: -80px;
  width: 400px;
}
.top-product-title{
  margin-left: 50px;
  color:#fff;
  font-size: 10.3rem;
  text-align: center;
  line-height: 1;
}
.top-product-title.pr2{
  font-size: 5.2rem;
  text-align: left;
}
.top-product-lead{
  display: block;
  margin-bottom: 20px;
  font-size: 1.5rem;
  line-height: 1.24;
  letter-spacing: 0;
}
.top-product-title.pr2 .top-product-lead{
  margin-bottom: 10px;
}

/* === modaal ======================== */
.modaal-container{
	margin-top: 50px;
	max-width: 960px;
}
.modaal-content-container {
  padding: 0;
}
.modaal-inner-wrapper {
	padding: 70px 40px;
}
.modaal-overlay {
//  opacity: 0.5 !important; }

.modaal-close {
  position: absolute;
  right: -10px;
  top: -50px;
}

.modaal-close:focus,
.modaal-close:hover {
  background-color: transparent;
  border-radius: 0; }

.modaal-close:focus:before,
.modaal-close:focus:after,
.modaal-close:hover:before,
.modaal-close:hover:after {
  background: #fff;
  border-radius: 0; }

.modal-wrap {
  max-width: 960px;
  display: none;
}
.tmh-area{
	padding: 30px 70px;
}
.tmh-title {
  display: block;
  font-size: 3.2rem;
  font-weight: bold;
  color: #1d3160;
	text-align: center;
}
.tmh-text {
	margin-top: 10px;
	line-height: 2;
  }
.tmh-lead{
	position: relative;
	margin-top: 20px;
	margin-bottom: 40px;
	padding: 10px 20px 15px;
	text-align: center;
	background-color: #1d3160;
	color:#fff;
	font-size: 1.4rem;
}
.tmh-lead span{
	display: block;
	font-size: 2.8rem;
}
.tmh-lead::after{
	position: absolute;
	content:"";
	bottom: -40px;
	left:50%;
	transform: translateX(-50%);
	width:14px;
	height: 40px;
	background: url("../images/ico_arrow_b.svg") no-repeat;
	background-size: contain ;
}
.tmh-cont{
	margin-bottom: 20px;
	padding: 20px 20px 35px;
	text-align: center;
	border: solid 4px #1d3160;
}
.tmh-cont-title{
	text-align: center;
	font-size: 2.8rem;
	font-weight: 700;
	color: #1d3160;
}
.tmh-cont-link span{
	position: relative;
}
.tmh-cont-link span::after{
	position: absolute;
	content:"";
	top: 50%;
	left: -20px;
	transform: translateY(-50%);
	width:16px;
	height: 22px;
	background: url("../images/ico_arrow1.svg") no-repeat;
	background-size: contain ;
}
.tmh-cont-image{
margin-top: 20px;
}


/* === 1 about-area ======================== */
.about-area {
// padding-bottom: 50px;
}
.about-text{
  margin-bottom: 40px;
}
.about-text p{
  line-height: 2;
  margin-bottom: 2em;
}
.about-text a{
	text-decoration: underline;
}
.about-text .txt-r{
  text-align: right;
  font-size: 1.4rem;
}
.name{
  margin-left: 10px;
  font-size: 2.0rem;
  font-weight: bold;
}

/* === 2 product-head-area ======================== */

.product-head-wrap{
  position: relative;
  top:0;
  height: 370px; 
  width:100vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.product-head {
  width: 50%;
}
.product-head {

}
.product-head.pr1{
  background: url("../../common/images/bg_btn_01.jpg") no-repeat 0 center;
  background-size: cover;
}
.product-head.pr2 {
  background-color: #458cc8;
  background: url("../../common/images/bg_btn_02.jpg") no-repeat center center;
  background-size: cover;
}
.product-head a {
  position: relative;
  display: block;
  height: 370px;
  overflow: hidden;
}
.product-head-image{
  margin: 30px auto 0;
  max-width: 220px;
}
.product-head-link{
  position: relative;
  top: -60px;
  text-align: center;
  font-size: 3.2rem;
  color: #fff;
}
.product-head-link::after{
  position: absolute;
  content:"";
  bottom: -20px;
  left:50%;
  transform: translateX(-50%);
  width:22px;
  height: 16px;
  background:url("../../common/images/ico_arrow_wh.svg") no-repeat;
}


/* === 3 product-mv-area pr1 ======================== */
.product-mv {
  position: relative;
  background-color: #000;
  background:url("../../common/images/bg_product_mv_01.jpg") no-repeat center center;
  background-size: cover;
  color:#fff;
}
.product-mv-wrap{
  padding-top: 150px;
  height: 800px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: row-reverse;
}
.product-mv-image{
  margin-left: -50px;
  max-width: 500px;
}

.product-mv-texts{
  margin-right: -50px;
  width: 60%;
  max-width:560px;
  font-size: 1.6rem;
  line-height: 1.75;
}
.product-mv-lead{}
.product-mv-title{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.product-mv-logo{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-right: 25px;
  font-size:14.0rem;
}
.product-mv-text{}
.txt-caption {
  margin-top: 20px;
  text-align: left;
  font-size: 1.3rem;
  line-height: 1.5;
}

/* === 3-1 case-area ======================== */
.case-area {
  clear: both;
  overflow: hidden;
}
.case-item-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 30px 50px;
  height: 100%;
}
.case-item{
  width: calc( 50% - 50px );
}
.case-item-image {
 margin: 40px auto 30px;
 width:208px;
 height: 208px;
 border-radius: 50%;
 overflow: hidden;
}
.case-item-lead {
 position: relative;
 margin-bottom: 66px;
 text-align: center;
 font-size: 1.8rem;
 line-height: 1.75;
 font-weight: 700;
}
.case-item-lead::after{
  position: absolute;
  content:"";
  bottom: -42px;
  left:50%;
  transform: translateX(-50%);
  width:52px;
  height: 23px;
  background:url("../../common/images/ico_next.svg") no-repeat;
}
.case-item-text {
  margin-top: auto;
  padding: 20px 20px;
  min-height: 125px;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0;
  background-color: #edeadd;
}

/* === 3-2 faq-area ======================== */
.faq-area {
  margin: 80px auto;
}
.faq-area a{
  text-decoration: underline;
 /* color: #b72700;*/
}
.faq-area a:hover{
  text-decoration: none;
  color: #000;
}
.faq-item {
  margin: 30px 0 0;
  text-align: left;
}
.faq-item-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding: 10px 10px 10px 90px;
  min-height: 70px;
  font-size: 1.8rem;
  font-weight: 700;
  background-color: #eeeeee;
}
.faq-item-title:before {
  content: "";
  position: absolute;
  background: #a49453;
  width: 70px;
  height: 70px;
  top: 0;
  left: 0;
}
.faq-item-title:after {
  content: "Q";
  position: absolute;
  font-size: 1.8rem;
  color: #fff;
  left: 27px;
}
.faq-item-text {
  position: relative;
  padding: 20px 10px 30px 90px;
  text-align: left;
  font-size: 1.6rem;
  line-height: 1.75;
  overflow: hidden;
}
.faq-item-text:before {
  content: "";
  position: absolute;
  border:solid 1px #a49453;
  width: 70px;
  height: 70px;
  top: 20px;
  left: 0;
}
.faq-item-text:after {
  content: "A";
  position: absolute;
  top:38px;
  left: 28px;
  font-size: 1.8rem;
  font-weight: 700;
  color: #a49453;
}

/* === 3-3 note-area ======================== */
.note-area{
  padding: 60px 0 100px;
  background-color: #eeeeee;
}
.note-item{
  padding: 25px 30px;
  background-color: #fff;
}
.note-item-title{
  font-size: 1.8rem;
  font-weight: 700;
}
.note-item-list{
  margin-top: 10px;
  margin-left: 1em;
  font-size: 1.4rem;
}
.note-item-list li{
  margin-bottom: 0.5em;
  text-indent: -1.1em;
}
.note-item-text{
  margin: 35px auto 50px;
  letter-spacing: 0;
  line-height: 1.75;
}
.link-item-wrap {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 justify-content: space-between;
 padding-top: 30px;
 padding-bottom: 60px;
 height: 100%;
}
.link-item{
  padding: 0;
  width: calc( 50% - 15px );
  background-color: #fff;
}
.link-item a{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 135px;
  text-decoration: underline;
  color:#1d3160;
}
.link-item a:hover{
	text-decoration: none;
}
.link-item-image{
  margin-right: 20px;
  width: 160px;
}
.link-item-text{}
.ink-item-btn{

}
.btn-ban{}
.btn-ban-wrap {
 position: relative;
 margin: 0 auto;
 text-align: center;
 max-width: 640px;
}
.btn-ban {
 display: flex;
 align-items: center;
 position: relative;
 margin: 0 auto;
 padding-left: 100px;
 height: 96px;
 text-align: center;
 font-size: 2.0rem;
 font-weight: 700;
 letter-spacing: 0.1px;
 background: #fff;
 border: solid 3px #bf0000;
 border-radius: 48px;
 box-sizing: border-box;
 box-shadow: 2px 10px 16px rgba(0, 0, 0, 0.2);
}
.btn-ban:after {
  position: absolute;
  content: "";
  right: 40px;
  width: 16px;
  height: 22px;
  background: url("../../common/images/ico_arrow3.svg") no-repeat;
  background-size: cover;
}

/* === 4 product-mv-area pr2 ======================== */
.product-mv.pr2 {
  position: relative;
  background-color: #000;
  background:url("../../common/images/bg_product_mv_02.jpg") no-repeat;
  background-size: cover;
  color:#fff;
}

.product-mv-title.pr2{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-top: 20px;
  margin-bottom: 30px;
}
.product-mv-title.pr2 .product-mv-logo{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 25px;
  margin-bottom: 20px;
  font-size:10.0rem;
  line-height: 0.9;
}
/* === 4-1 scene-area ======================== */
.scene-area {
  clear: both;
  overflow: hidden;
}
.scene-item-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 0 66px;
  height: 100%;
}
.scene-item{
  width: calc( 100% / 3 );
}
.scene-item-image {
  margin: 40px auto 30px;
  width:208px;
  height: 208px;
  border-radius: 50%;
  overflow: hidden;
}
.scene-item-lead {
  position: relative;
  text-align: center;
  font-size: 2.0rem;
  line-height: 1.5;
  font-weight: 700;
}

/* === 4-2 lineup-area ======================== */
.lineup-area {
  clear: both;
  overflow: hidden;
}

.lineup-item-wrap {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 30px 60px;
  height: 100%;
}
.lineup-item{
  margin: 9px 13px;
  width: calc( 100% / 3 - 26px );
  border: solid 1px #e0e0e0;
}
.lineup-item-image {
 margin: 0px auto 20px;
  max-width:252px;
}
.lineup-item-image figcaption {
  margin-top: 10px;
  text-align: center;
 font-size: 1.6rem;

}

/* === 4-3 feature-area ======================== */
.feature-area{
  margin: 80px auto 80px;
}
.feature-list li{
  position: relative;
  margin-bottom: 10px;
  padding: 13px 10px 13px 60px;
  font-size: 1.8rem;
}
.feature-num{
  position: absolute;
  left:0;
  display: block;
  width: 46px;
  text-align: center;
  font-size: 1.6rem;
  color: #fff;
}

.feature-num::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: #a49453;
  z-index: -1;
}
/* === 5 company-area ======================== */
.company-area {

}
.company-tbl{
  margin: -20px auto 120px;
  width: 100%;
}
.company-tbl th{
  padding: 21px 18px;
  width:198px;
  background-color: #d7d7d7;
  border-bottom: solid 4px #fff;
  line-height: 1.5;
}
.company-tbl td{
  padding: 21px 18px;
  background-color: #fafafa;
  border-bottom: solid 2px #fff;
  line-height: 1.5;
}
.company-tbl td a{
text-decoration: underline;
}
.company-tbl td a:hover{
	text-decoration: none;
}
.company-image{
  margin: 25px auto;
  text-align: center;
}
.company-data {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 100%;
}
.company-data dt{
  width: 17%;
  line-height: 1.75;
}
.company-data dd{
  width: 83%;
  line-height: 1.75;
}

/* === 7 contact-area ======================== */
.contact-area {
 position: relative;
 padding: 80px 40px 100px;
 width: 100%;
 text-align: center;
  background : -moz-linear-gradient(0% 50% 0deg,rgba(27, 57, 128, 1) 0%,rgba(69, 140, 200, 1) 100%);
  background : -webkit-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  background : -webkit-gradient(linear,0% 50% ,100% 50% ,color-stop(0,rgba(27, 57, 128, 1) ),color-stop(1,rgba(69, 140, 200, 1) ));
  background : -o-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  background : -ms-linear-gradient(0deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#1B3980', endColorstr='#458CC8' ,GradientType=0)";
  background : linear-gradient(90deg, rgba(27, 57, 128, 1) 0%, rgba(69, 140, 200, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1B3980',endColorstr='#458CC8' , GradientType=1);
}

.contact-title {
  margin: 0 auto 40px;
 text-align: center;
 font-weight: 700;
 font-size: 3.4rem;
 line-height: 1.1;
 letter-spacing: 0.075em;
 color: #fff;
}
.contact-title .en {
 display: block;
 margin-bottom: 20px;
 font-size: 6.0rem;
 letter-spacing: 0.1em;
 color: #fff;
}
.btn-contact-wrap {
 position: relative;
 margin: 0 auto;
 text-align: center;
 max-width: 640px;
}
.btn-contact {
 display: block;
 position: relative;
 height: 96px;
 line-height: 96px;
 text-align: center;
 font-size: 2.0rem;
 font-weight: 700;
 letter-spacing: 0.16em;
 color: #fff;
 background: linear-gradient(90deg, rgba(27,57,128,1) 0%, rgba(69,140,200,1) 100%);
 border-radius: 48px;
 box-sizing: border-box;
 box-shadow: 2px 10px 16px rgba(0, 0, 0, 0.2);
}
.btn-contact:before {
 position: absolute;
 content: "";
 top: 0;
 right: 0;
 bottom:0;
 margin-top: auto;
 width: 22px;
 //height: 16px;
 background: url("../../common/images/ico_arrow_wh.svg") no-repeat;
 transform: rotate(-90deg) ;
}
.btn-contact:hover{
  color:#458cc8;
}
/* col-3 */
.col-3:after {
 content: '';
 display: block;
 clear: both;
}
.col-3 {
 margin: 0 auto; /* 0 -20px; */
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
 justify-content: center;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
}
.col-3 li {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 flex-direction: column;
 margin: 10px 1.5333%;
 width: 30%;
 max-width: 360px;
}

/* ==========================================================================
Helper classes
========================================================================== */
/* clearfix */
.clearfix:after {
 clear: both;
 display: table;
 content: " ";
}
.clearfix:before {
 display: table;
 content: " ";
}
/* clear */
.clear {
 clear: both !important;
}
/* ol */
ol li {
 margin-left: 1em;
 line-height: 1.6875;
}
/* pc/sp , br */
.m-pc-only, .br-pc {
 display: block;
}
.m-sp-only, .br-sp {
 display: none;
}

.more {
  display: none;
}