@charset "shift_jis";
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/*  ---------------------------------------------- +base & parts   */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////// */
#landing ol,#landing li { list-style: none!important; margin-left: 0!important;}
/* --- リンク画像の透過--- */
#landing a:hover {
opacity: .65;
-webkit-opacity: .65;
-moz-opacity: .65;
}

#landing a {
-webkit-transition: opacity .2s ease-out;
-moz-transition: opacity .2s ease-out;
-ms-transition: opacity .2s ease-out;
transition: opacity .2s ease-out;
}

:root{
	--light-brown: #604545;
	--dark-brown: #995330;
	--light-yellow: #E9E0D7;
    --navy: #17385C;
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/*  ---------------------------------------------- +landing  */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////// */
@font-face {
	font-family: 'VDL-V7Mincho-Bold';
	src: url(../fonts/VDL-V7Mincho-Bold.ttf);
}
@font-face {
	font-family: 'VDL-V7Mincho-M';
	src: url(../fonts/VDL-V7Mincho-Medium.ttf);
}
@font-face {
	font-family: 'SourceHanSansJP-Bold';
	src: url(../fonts/SourceHanSansJP-Bold.otf);
}
@font-face {
	font-family: 'SourceHanSansJP-Medium';
	src: url(../fonts/SourceHanSansJP-Medium.otf);
}
@font-face {
	font-family: 'SourceHanSansJP-Light';
	src: url(../fonts/SourceHanSansJP-Light.otf);
}
@font-face {
	font-family: 'SourceHanSansJP-Regular';
	src: url(../fonts/SourceHanSansJP-Regular.otf);
}
@font-face {
	font-family: 'FOT-NewCezanne-Pro-M';
	src: url(../fonts/FOT-NewCezanne-Pro-M.otf);
}
@font-face {
	font-family: 'FOT-NewCezanne-Pro-DB';
	src: url(../fonts/FOT-NewCezanne-Pro-DB.otf);
}
@font-face {
	font-family: 'FOT-NewCezanne-Pro-B';
	src: url(../fonts/FOT-NewCezanne-Pro-B.otf);
}
@font-face {
	font-family: 'Yu-Gothic-Bold';
	src: url(../fonts/Yu-Gothic-Bold.otf);
}
@font-face {
	font-family: 'ToppanBunkyuMidashiGoStd-EB';
	src: url(../fonts/ToppanBunkyuMidashiGoStd-EB.ttf);
}
@font-face {
    font-family: "Thirsty Script W01 Lt";
    src: url("https://db.onlinewebfonts.com/t/cbf5045104b233b578d2cbb667c5282a.eot");
    src: url("https://db.onlinewebfonts.com/t/cbf5045104b233b578d2cbb667c5282a.eot?#iefix")format("embedded-opentype"),
    url("https://db.onlinewebfonts.com/t/cbf5045104b233b578d2cbb667c5282a.woff2")format("woff2"),
    url("https://db.onlinewebfonts.com/t/cbf5045104b233b578d2cbb667c5282a.woff")format("woff"),
    url("https://db.onlinewebfonts.com/t/cbf5045104b233b578d2cbb667c5282a.ttf")format("truetype"),
    url("https://db.onlinewebfonts.com/t/cbf5045104b233b578d2cbb667c5282a.svg#Thirsty Script W01 Lt")format("svg");
}
.wrapper_landing{
	font-family: 'SourceHanSansJP-Regular';
	font-size: 16px;
	text-align: left;
    overflow: hidden;
}
.wrapper_landing p{
	margin: 1em 0;
}
.wrapper_landing sup{
    vertical-align: top;
}
.wrapper_landing .pos-relative{
    position: relative;
}
.wrapper_landing .flex{
	display: flex;
	justify-content: center;
	align-items: center;
}
.wrapper_landing .flex.reverse{
    flex-direction: row-reverse;
}
.wrapper_landing .justify-between{
    justify-content: space-between;
}
.wrapper_landing .layout-constrained{
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
.wrapper_landing .w-full{
    width: 100%;
}
.wrapper_landing .section{
	font-family: 'SourceHanSansJP-Regular';
	font-size: 16px;
}
.wrapper_landing .section-title{
	font-family: 'VDL-V7Mincho-Bold';
	font-size: 35px;
	text-align: center;
    margin: 0;
}
.wrapper_landing .section-detail-title{
	font-size: 25px;
    font-family: 'VDL-V7Mincho-Bold';
}
.wrapper_landing .psuedo-deco{
    position: relative;
}
.wrapper_landing .psuedo-deco:before,
.wrapper_landing .psuedo-deco:after{
    content: '';
    position: absolute;
    background-size: 100% 100%;
}
.wrapper_landing .landing-top{
    position: relative;
    height: 66.6vw;
    max-height: 100vh;
    background-image: url(../img/top.jpg);
    background-position-x: center;
    background-repeat: no-repeat;
    background-size: auto 100%;
}
.wrapper_landing .landing-top .landing-top-desc{
	margin: 0;
    color: white;
    font-size: 36px;
    font-family: 'SourceHanSansJP-Bold';
    background: var(--navy);
    width: 705px;
    padding: 18px 0;
    letter-spacing: .1em;
    clip-path: polygon(20px 0%, 100% 0%, calc(100% - 20px) 100%, 0% 100%);
}
.wrapper_landing .landing-top .landing-top-desc span{
    color: #FFE770
}
.wrapper_landing .landing-top .landing-top_content{
    position: absolute;
    top: 17%;
    left: 50%;
    transform: translatex(-50%);
    line-height: 1.5;
    text-align: center;
    width: 1160px;
    align-items: flex-start
}
.wrapper_landing .landing-top .top_text{
    margin-right: 22px;
}
.wrapper_landing .landing-top .landing-top_content img{
    max-width: 361px;
    margin-top: 10px;
}
.wrapper_landing .landing-top .top-desc2{
    margin: 14px 0 0 70px;
}
.wrapper_landing .landing-top .top-desc2 sup{
    font-size: 20px;
}
.wrapper_landing .landing-top .top_logo_wrapper{
    width: 1135px;
    justify-content: space-between;
    font-size: 86px;
    font-style: italic;
    position: absolute;
    bottom: 9.6%;
    left: 50%;
    transform: translatex(-45%);
    line-height: 1.2;
    font-family: 'SourceHanSansJP-Bold';
    align-items: flex-end;
}
.wrapper_landing .landing-top .top-desc3{
    margin: 0 0 25px 0;
    color: black;
    text-shadow: 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 20px rgba(255, 255, 255, 1), 0px 0px 30px rgba(255, 255, 255, 1), 0px 0px 40px rgb(255 255 255), 0px 0px 50px rgb(255 255 255), 0px 0px 60px rgb(255 255 255);
}
.wrapper_landing .landing-top .top_logo{
    width: 191px;
}
.wrapper_landing .reage_intro{
    position: relative;
    margin: 0 auto;
    max-width: 900px;
    border: 5px solid #0C0C78;
    border-radius: 22px;
    background: white;
}
.wrapper_landing .reage_wrapper{
    position: relative;
}
.wrapper_landing .reage {
    padding: 70px 55px 70px 43px;
    box-sizing: border-box;
    position: relative;
    text-align: center;
	font-family: 'FOT-NewCezanne-Pro-M';
}
.wrapper_landing .reage_inner{
    align-items: flex-start;
}
.wrapper_landing .reage .reage-media{
    width: 45%;
    margin-top: 20px;
}
.wrapper_landing .reage .reage-media img{
	width: 100%;
}
.wrapper_landing .reage-media_inner{
    justify-content: space-between;
}
.wrapper_landing .reage .reage-media_detail p{
    font-size: 14px;
    margin: 20px 0 0;
}
.wrapper_landing .reage .reage-media_desc{
    font-size: 12px;
    margin: 25px 0 0;
    text-align: left;
}
.wrapper_landing .reage .reage-content{
    width: 52.8%;
}
.wrapper_landing .reage .reage-title{
    font-family: 'ShipporiMincho Bold';
    font-size: 48px;
    line-height: 1.3;
    margin: 0;
    text-align: left;
}
.wrapper_landing .reage .reage-special{
    font-size: 56px;
    margin: 0;
    line-height: 1.2;
    font-style: italic;
    text-align: left;
    font-family: 'FOT-NewCezanne-Pro-DB';
}
.wrapper_landing .reage .reage-title small{
    font-size: 35px;
    font-family: 'A-OTF Shin Go Pro DB';
    margin-left: 30px;
}
.wrapper_landing .reage .reage-content .reage-detail{
    color: #CF2D1F;
    font-family: 'VDL-V7Mincho-Bold';
    justify-content: space-between;
    padding: 0 22px;
    margin-top: 30px;
}
.wrapper_landing .reage .reage-content .reage-detail .reage-sale-label{
    font-size: 26px;
    line-height: 1.3;
    border-top: 1px solid #CF2D1F;
    border-bottom: 1px solid #CF2D1F;
    padding: 0 10px;
    margin-top: 10px;
}
.wrapper_landing .reage .reage-content .reage-detail .reage-price{
	font-size: 90px;
	line-height: 1;
    letter-spacing: -.05em;
}
.wrapper_landing .reage .reage-content .reage-detail .reage-tax_included{
	font-size: 21px;
    line-height: 1;
    text-align: center;
    margin: 0;
    margin-top: 10px;
}
.wrapper_landing .reage .reage-content .reage-detail .reage-tax_included span{
	font-size: 45px;
    position: relative;
}
.wrapper_landing .reage-tax_included span:after{
    content: '';
	position: absolute;
    top: 50%;
    right: 0;
    transform: translate(100%, -50%);
	width: 33px;
    height: 8px;
    background-image: url(../img/mark.svg);
    background-size: 100% 100%;
    display: none
}
.wrapper_landing .reage .reage-content .cp_ofr_btn{
    margin-top: 30px;
    line-height: 2.5;
}
.wrapper_landing .reage .reage-content .cp_ofr_btn a{
    box-sizing: border-box;
    display: inline-block;
    width: 397px;
    max-width: 100%;
    padding: 5px 0;
    font-size: 15px;
    font-weight: bold;
}
.wrapper_landing .movie{
    text-align: center;
    margin-top: 126px;
}
.wrapper_landing .section-title_dec{
    position: relative;
}
.wrapper_landing .section-title_dec:before{
    content: '';
    position: absolute;
    width: 40px;
    height: 36px;
    background-image: url(../img/title_deco.png);
    background-size: 100% 100%;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
}
.wrapper_landing .movie_title{
    padding-bottom: 25px;
    border-bottom: 1px solid #808080;
    font-size: 25px;
    color: #808080;
	font-family: 'Yu-Gothic-Bold';
    position: relative;
    margin: 0 auto;
    max-width: 750px;
}
.wrapper_landing .movie_title:after{
    background-image: url(../img/movie.svg);
    width: 162px;
    height: 52px;
    background-size: 100% 100%;
    right: -20px;
    bottom: -10px;
}
.wrapper_landing .movie_title span{
    position: relative;
}
.wrapper_landing .movie_title span:before{
    content: '';
    width: 22px;
    height: 22px;
    background-image: url(../img/check.svg);
    background-size: 100% 100%;
    display: inline-block;
    margin-right: 20px;
    transform: translateY(2px)
}
.wrapper_landing .movie iframe{
    width: 565px;
    height: 565px;
    box-sizing: border-box;
    margin-top: 55px;
}

/* visumo ---------------------------------------------------------------------------------------------------*/
.wrapper_landing .movie .hacobune-univideo {
    width: 565px;
    height: 565px;
    margin: 55px auto 0;
}
.wrapper_landing .movie .hacobune-video-js .hacobune-vjs-big-play-button{
    font-size:3em;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.wrapper_landing .movie .hacobune-video-js .hacobune-vjs-big-play-button ::before {
    font-size:3em
}


.bg1{
    background: #FDF7F1;
}
.wrapper_landing .bg-group1{
    padding: 120px 0 150px
}
.wrapper_landing .recommend{
    text-align: center;
}
.wrapper_landing .recommend_inner{
    background-image: url(../img/bg_usecase.png);
    background-size: 100% 100%;
    height: 56vw;
    position: relative;
    z-index: 9;
}
.wrapper_landing .recommend_text{
    justify-content: space-between;
    align-items: stretch;
    margin-top: 40px;
}
.wrapper_landing .recommend-title{
    font-size: 40px;
    font-family: 'FOT-NewCezanne-Pro-B';
    margin: 0;
    font-style: italic;
    line-height: 1.4;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-shadow: 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 20px rgba(255, 255, 255, 1), 0px 0px 20px rgba(255, 255, 255, 1), 0px 0px 30px rgba(255, 255, 255, 1), 0px 0px 30px rgba(255, 255, 255, 1);
}
.wrapper_landing .recommend_detail{
    position: absolute;
    text-align: center;
    box-sizing: border-box;
    width: 231px;
    height: 198px;
}
.wrapper_landing .recommend_detail p{
    margin: 0;
    font-size: 18px;
    line-height: 1.4;
    margin-top: -20px;
    letter-spacing: .1em;
}
.wrapper_landing .recommend_detail:first-child{
    background-image: url(../img/usecase1.png);
    background-size: 100% 100%;
    left: 7%;
    top: 18.7%;
    padding-top: 85px;
}
.wrapper_landing .recommend_detail:nth-child(2){
    background-image: url(../img/usecase2.png);
    background-size: 100% 100%;
    right: 7%;
    top: 13%;
    padding-top: 85px;
}
.wrapper_landing .recommend_detail:last-child{
    background-image: url(../img/usecase3.png);
    background-size: 100% 100%;
    left: 50%;
    bottom: 10%;
    transform: translateX(-105%);
    padding-top: 130px;
}
.wrapper_landing .easy-use{
    margin-top: 65px;
    font-family: 'FOT-NewCezanne-Pro-M';
}
.wrapper_landing .easy-use-title{
    font-size: 36px;
    line-height: 1.3;
    margin: 0;
    text-align: center;
    line-height: 1.4;
    font-family: 'ToppanBunkyuMidashiGoStd-EB';
}
.wrapper_landing .easy-use-inner{
    padding: 70px 0 220px;
    background-image: url(../img/bg_recommend.png);
    background-size: 100% 100%;
}
.wrapper_landing .easy-use .recommend1{
    margin-top: 60px;
}
.wrapper_landing .easy-use .easy-use-detail{
    width: 91.6%;
    justify-content: flex-start;
    align-items: flex-start;
}
.wrapper_landing .easy-use .easy-use-detail img{
    width: 66.8%;
}
.wrapper_landing .easy-use .easy-use-detail p{
    text-align: center;
    background: #68B6E0;
    color: white;
    margin: 0 0 0 -14.5%;
    font-size: 21px;
    width: 46.4%;
    line-height: 1.7;
    padding: 57px 0;
    position: relative;
}
.wrapper_landing .easy-use .easy-use-detail+.easy-use-detail{
    margin-top: 70px;
}
.wrapper_landing .easy-use .easy-use-detail:nth-child(2n){
    margin-left: auto;
    margin-right: 0;
    flex-direction: row-reverse;
}
.wrapper_landing .easy-use .easy-use-detail:nth-child(2n) p{
    margin-left: 0;
    margin-right: -14.5%;
}
.wrapper_landing .easy-use .easy-use-detail:first-child p{
    margin-top: 130px
}
.wrapper_landing .easy-use .easy-use-detail:nth-child(2) p{
    margin-top: 87px
}
.wrapper_landing .easy-use .easy-use-detail:nth-child(3) p{
    margin-top: 100px
}
.wrapper_landing .easy-use .easy-use-detail:last-child p{
    margin-top: 370px;
}
.wrapper_landing .easy-use-desc{
    margin: 0;
    line-height: 2;
    font-size: 23px;
    text-align: center;
    background: #68B6E0;
    color: white;
    padding: 43px 0;
}
.wrapper_landing .point_title{
    margin: 0;
    font-size: 36px;
    background: #17385C;
    text-align: center;
    color: white;
    font-family: 'ToppanBunkyuMidashiGoStd-EB';
    padding: 73px 0;
}
.wrapper_landing .point_title span{
    font-size: 65px;
    transform: translateY(10%);
    display: inline-block;
}
.wrapper_landing  .point_inner{
    margin-top: 195px;
}
.wrapper_landing .point .point_detail{
    display: flex;
    justify-content: space-between;
}
.wrapper_landing .point .point_detail:nth-child(2n),
.wrapper_landing .point .point_detail:last-child
{
    flex-direction: row-reverse;
}
.wrapper_landing .point .point_detail+.point_detail{
    margin-top: 150px;
}
.wrapper_landing .point .point_detail .point_text{
    width: 32.2%;
    position: relative;
}
.wrapper_landing .point .point_detail .point_detail_title{
    margin: 0 0 0 calc(490px - 50vw);
    background: #17385C;
    color: white;
    font-size: 24px;
    font-style: italic;
    font-family: 'SourceHanSansJP-Bold';
    padding: 12px 0;
    text-align: right;
    padding-right: 110px;
    clip-path: polygon(0 0, 100% 0%, calc(100% - 20px) 100%, 0% 100%);
}
.wrapper_landing .point .point_detail .point_desc{
    line-height: 2.25;
    margin: 25px 0 0;
    position: relative;
    z-index: 9;
}
.wrapper_landing .point .point_detail .point_num{
    font-size: 135px;
    color: rgb(184 210 255 / 50%);
    margin: 0;
    position: absolute;
    line-height: 1;
    bottom: 0;
    right: 0;
    transform: translatex(20%);
    font-family: "Thirsty Script W01 Lt";
}
.wrapper_landing .point .point_detail:nth-child(2) .point_num{
    bottom: -60px;
}
.wrapper_landing .point .point_detail .point_media{
    width: 61%;
}
.wrapper_landing .point .point_detail .point_media img{
    width: 100%;
}
.wrapper_landing .point_detail:first-child .point_detail_title{
    margin-top: 45px;
}
.wrapper_landing .point_detail:nth-child(2) .point_detail_title{
    margin-top: 30px;
    margin-left: -40px;
    margin-right: calc(490px - 50vw);
    clip-path: polygon(0 0, 100% 0%, 100% 100%, 20px 100%);
    text-align: left;
    padding-left: 50px;
}
.wrapper_landing .point_detail:nth-child(3) .point_detail_title{
    margin-top: 20px;
}
.wrapper_landing .point .point_material{
    text-align: center;
    margin-top: 130px;
}
.wrapper_landing .point .point_material img{
    max-width: 421px;
}
.wrapper_landing .point_detail:last-child{
    align-items: center;
    margin-top: 60px;
}
.wrapper_landing .point .point_detail:last-child .point_desc{
    margin-top: 0;
}
.wrapper_landing .point_detail .ref{
    font-size: 14px;
}
.wrapper_landing .size{
    background: #E6E6E6;
    padding: 280px 0 380px;
    text-align: center;
    font-family: 'SourceHanSansJP-Bold';
    color: #17385C;
    clip-path: polygon(0 0, 100% 150px, 100% 100%, 0 calc(100% - 150px));
    margin-top: 140px;
}
.wrapper_landing .size .size_title{
    font-size: 24px;
    font-style: italic;
    margin: 0;
}
.wrapper_landing .size table{
    margin: 45px auto 0;
    width: 770px;
    border-collapse: collapse;
    text-align: center;
    color: #17385C;
}
.wrapper_landing .size table td{
    border: 1px solid #17385C;
    font-size: 36px;
    padding: 48px 0;
    background: white;
    width: 50%;
}
.wrapper_landing .size table td span{
    position: relative;
}
.wrapper_landing .size table tr:first-child td{
    font-size: 24px;
    padding: 12px 0;
}
.wrapper_landing .size table tr:not(:first-child) td{
    position: relative;
    font-style: italic
}
.wrapper_landing .size table tr:not(:first-child) td:before{
    content: '';
    position: absolute;
    width: calc(100% - 6px);
    height: calc(100% - 3px);
    left: 3px;
    top: 3px;
}
.wrapper_landing .size table tr:not(:first-child) td:first-child:before{
     background: #C7F0FF;
}
.wrapper_landing .size table tr:not(:first-child) td:last-child:before{
     background: #C0D3FF;
}
.wrapper_landing .size table tr:last-child td:before{
    top: 0;
}
.wrapper_landing .size+.reage_intro{
    margin-top: -285px;
}
.wrapper_landing .product-info{
    margin-top: 190px;
    padding: 120px 0 206px;
    background: rgb(23 56 92 / 50%);
}
.wrapper_landing .product-info .product-info-title{
    background: white;
    font-size: 27px;
    text-align: center;
    margin: 0 0 22px;
    font-family: 'SourceHanSansJP-Bold';
    padding: 11px 0
}
.wrapper_landing .product-info .product-info_inner .ref{
    color: white;
    font-size: 15px;
    font-family: 'SourceHanSansJP-Light';
    margin: 20px 0 0 20px;
}
.wrapper_landing .product-info .tbl-product-info{
	width: 100%;
	border-collapse: collapse;
	font-family: 'SourceHanSansJP-Light';
}
.wrapper_landing .product-info .tbl-product-info tr td{
    border: 1px solid black;
    font-size: 15px;
    padding: 10px 0 10px 20px;
}
.wrapper_landing .product-info .tbl-product-info tr td img{
    max-width: 291px
}
.wrapper_landing .product-info .tbl-product-info tr td:first-child{
    background: #17385C;
    font-size: 18px;
    width: 177px;
    padding: 14px 0 14px 16px;
    color: white;
}
.wrapper_landing .product-info .tbl-product-info tr td:last-child{
	background: white;
	padding-left: 20px;
}
.wrapper_landing .cp_ofr_btn{
    display: inline-block;
    margin: 55px auto 0;
}