@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{
    --navy: #17385C;
}
@font-face{
	font-family: 'VDL-V7Mincho-Bold';
	src: url(../fonts/VDL-V7Mincho-Bold.ttf);
}
@font-face{
	font-family: 'SourceHanSansJP-Bold';
	src: url(../fonts/SourceHanSansJP-Bold.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");
}

#landing{
	font-family: 'SourceHanSansJP-Regular';
	font-size: 16px;
	text-align: left;
    overflow: hidden;
}
#landing p{
	margin: 1em 0;
}
#landing sup{
    vertical-align: top;
}
#landing .flex{
	display: flex;
	justify-content: center;
	align-items: center;
}
#landing .justify-between{
    justify-content: space-between;
}
#landing .layout-constrained{
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
#landing .w-full{
    width: 100%;
}
#landing .section{
	font-family: 'SourceHanSansJP-Regular';
	font-size: 16px;
}

#landing .bg-group1{
    padding: 120px 0 150px
}
.bg1{
    background: #FDF7F1;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/*  ---------------------------------------------- +landing  */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////// */

/* landing-top ---------------------------------------------------------------------------------------------------*/
#landing .landing-top{
    position: relative;
    height: 650px;
    background-image: url(../img/top.jpg);
    background-repeat: no-repeat;
    background-size: 100% ;
}
#landing .landing-top .landing-top_content{
    align-items: flex-start;
    position: absolute;
    left: 50%;
    top: 17%;
    transform: translatex(-50%);
    width: 980px;
    line-height: 1.5;
    text-align: center;
}
#landing .landing-top .landing-top_content img{
    max-width: 300px;
    margin-top: 10px;
}
#landing .landing-top .top_text{
    margin-right: 22px;
}
#landing .landing-top .landing-top-desc{
    clip-path: polygon(20px 0%, 100% 0%, calc(100% - 20px) 100%, 0% 100%);
    width: 500px;
	margin: 0;
    margin-bottom: 10px;
    padding: 14px 0;
    background: var(--navy);
    color: white;
    letter-spacing: .1em;
    font-family: 'SourceHanSansJP-Bold';
    font-size: 24px;
}
#landing .landing-top .landing-top-desc span{
    color: #FFE770
}
#landing .landing-top .top-desc2{
    margin: 14px 0 0 70px;
}
#landing .landing-top .top-desc2 sup{
    font-size: 20px;
}
#landing .landing-top .top_logo_wrapper{
    align-items: flex-end;
    justify-content: space-between;
    position: absolute;
    bottom: 6.6%;
    width: 980px;
    line-height: 1.2;
    font-family: 'SourceHanSansJP-Bold';
    font-size: 72px;
    font-style: italic;
}
#landing .landing-top .top-desc3{
    margin: 0 0 25px 40px;
    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);
}
#landing .landing-top .top_logo{
    width: 191px;
    margin-right: 40px;
}
/* recommend ---------------------------------------------------------------------------------------------------*/
#landing .recommend{
    text-align: center;
}
#landing .recommend_inner{
    position: relative;
    z-index: 9;
    height: 549px;
    background-image: url(../img/bg_usecase.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
#landing .recommend-title{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    margin: 0;
    line-height: 1.4;
    font-family: 'FOT-NewCezanne-Pro-B';
    font-size: 38px;
    font-style: italic;
    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);
}
#landing .recommend_text{
    justify-content: space-between;
    align-items: stretch;
    margin-top: 40px;
}
#landing .recommend_detail{
    box-sizing: border-box;
    position: absolute;
    width: 190px;
    height: 166px;
    text-align: center;
}
#landing .recommend_detail:first-child{
    left: 2%;
    top: 22.7%;
    padding-top: 75px;
    background-image: url(../img/usecase1.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
#landing .recommend_detail:nth-child(2){
    right: 1%;
    top: 11%;
    padding-top: 75px;
    background-image: url(../img/usecase2.png);
    background-size: 100%;
    background-repeat: no-repeat;
}
#landing .recommend_detail:last-child{
    bottom: 8%;
    left: 50%;
    transform: translateX(-105%);
    padding-top: 110px;
    background-image: url(../img/usecase3.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
#landing .recommend_detail p{
    margin: -20px 0 0 0;
    letter-spacing: .1em;
    line-height: 1.4;
    font-size: 16px;
}
/* easy-use ---------------------------------------------------------------------------------------------------*/
#landing .easy-use{
    margin-top: 65px;
    font-family: 'FOT-NewCezanne-Pro-M';
}
#landing .easy-use-title{
    font-size: 36px;
    line-height: 1.3;
    margin: 0;
    text-align: center;
    line-height: 1.4;
    font-family: 'ToppanBunkyuMidashiGoStd-EB';
}
#landing .easy-use .recommend1{
    margin-top: 60px;
}
#landing .easy-use-desc{
    margin: 0;
    line-height: 2;
    font-size: 23px;
    text-align: center;
    background: #68B6E0;
    color: white;
    padding: 43px 0;
}
#landing .easy-use-inner{
    padding: 70px 0 220px;
    background-image: url(../img/bg_recommend.png);
    background-size: 100% 100%;
}
#landing .easy-use .easy-use-detail{
    width: 91.6%;
    justify-content: flex-start;
    align-items: flex-start;
}
#landing .easy-use .easy-use-detail+.easy-use-detail{
    margin-top: 70px;
}
#landing .easy-use .easy-use-detail:nth-child(2n){
    margin-left: auto;
    margin-right: 0;
    flex-direction: row-reverse;
}
#landing .easy-use .easy-use-detail img{
    width: 66.8%;
}
#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;
}
#landing .easy-use .easy-use-detail:nth-child(2n) p{
    margin-left: 0;
    margin-right: -14.5%;
}
#landing .easy-use .easy-use-detail:first-child p{
    margin-top: 130px
}
#landing .easy-use .easy-use-detail:nth-child(2) p{
    margin-top: 87px
}
#landing .easy-use .easy-use-detail:nth-child(3) p{
    margin-top: 100px
}
#landing .easy-use .easy-use-detail:last-child p{
    margin-top: 370px;
}
/* point ---------------------------------------------------------------------------------------------------*/
#landing .point_title{
    margin: 0;
    font-size: 36px;
    background: #17385C;
    text-align: center;
    color: white;
    font-family: 'ToppanBunkyuMidashiGoStd-EB';
    padding: 73px 0;
}
#landing .point_title span{
    display: inline-block;
    transform: translateY(10%);
    margin: 0 7px;
    font-size: 65px;
}
#landing  .point_inner{
    margin: 195px 0 100px;
}
#landing .point .point_detail{
    display: flex;
    justify-content: space-between;
}
#landing .point .point_detail:nth-child(2n),
#landing .point .point_detail:last-child
{
    flex-direction: row-reverse;
}
#landing .point .point_detail+.point_detail{
    margin-top: 150px;
}
#landing .point .point_detail .point_text{
    position: relative;
    width: 40%;
}
#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%);
}
#landing .point_detail:first-child .point_detail_title{
    margin-top: 45px;
}
#landing .point_detail:nth-child(2) .point_detail_title{
    clip-path: polygon(0 0, 100% 0%, 100% 100%, 20px 100%);
    margin-left: -40px;
    margin-right: calc(490px - 50vw);
    padding-left: 50px;
    text-align: left;
}
#landing .point_detail:nth-child(3) .point_detail_title{
    margin-top: 20px;
}
#landing .point_detail:last-child{
    align-items: center;
    margin-top: 60px;
}
#landing .point .point_detail .point_desc{
    line-height: 2.25;
    margin: 25px 0 0;
    position: relative;
    z-index: 9;
}
#landing .point .point_detail:last-child .point_desc{
    margin-top: 0;
}
#landing .point .point_detail .point_num{
    position: absolute;
    bottom: 0;
    right: 0;
    margin: 0;
    color: rgb(184 210 255 / 50%);
    line-height: 1;
    font-family: "Thirsty Script W01 Lt";
    font-size: 135px;
}
#landing .point .point_detail:nth-child(2) .point_num{
    bottom: -60px;
    right: 30px;
}
#landing .point .point_detail .point_media{
    width: 50%;
}
#landing .point .point_detail .point_media img{
    width: 100%;
}
#landing .point .point_material{
    text-align: center;
    margin-top: 130px;
}
#landing .point .point_material img{
    max-width: 421px;
}
#landing .point_detail .ref{
    font-size: 14px;
}