@charset "UTF-8";
@import "base.css";
@import "fonts.css";
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho+B1:wght@500;600;700&display=swap');
/*==========================================================================*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/
/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */ :root {
  --font-main: "游ゴシック体", "Yu Gothic Medium", "Yu Gothic", YuGothic, sans-serif;
  /* FONT SITE */
  --txt: #292929;
  /* COLOR TEXT */
  --mcolor: #10291B;
  /* MAIN COLOR  */
  --scolor: #B1A430;
  /* SUB COLOR */
  /* CUSTOM COLOR */
  --yellow: #FFFF22;
  --green: #00B800;
  --dark: #B1A430;
  --gray: #BEBEBE;
  --red: #DC000C;
  --black: #202020;
  --f-ttl: 'Shippori Mincho B1', serif;
}
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
  font-size: 180%;
  -webkit-text-size-adjust: none;
  font-weight: 400;
}
a {
  transition: all ease 0.3s;
  text-decoration: none;
  color: var(--txt);
}
img {
  vertical-align: middle;
  max-width: 100%;
  flex-shrink: 0;
  height: auto;
}
*, ::before, ::after {
  box-sizing: border-box;
  outline: none;
}
/* RESET CHECK EMPTY */
/* img:not([alt]),
img[alt=''] {outline: 0 0 5px red;}
a[href=""],
a[href="#"],
a[href^="javascript:"],
a:not([href]) {background: red;} */
/*==========================================================================*/
/*                               Container                                  */
/*==========================================================================*/
html {
  background: #F7F7F7
}
body {
  color: var(--txt);
  -webkit-text-size-adjust: none;
  min-width: 320px;
  font-family: var(--font-main);
}
table {
  width: 100%
}
h1, h2, h3, h4, h5, h6 {
  line-height: 1.5;
}
p, dd, dt, li, th, td, address {
  line-height: 1.67em;
  letter-spacing: 0;
}
p {
  margin: 0 0 1.5em;
}
p:last-child {
  margin-bottom: 0
}
#wrapper {
  overflow: hidden;
  margin: 0 auto
}
.inner {
  width: 100%;
  margin: 0 auto;
  position: relative;
  max-width: 1130px;
  padding: 0 15px;
}
/*==========================================================
                      C U S T O M 
==========================================================*/
.flex_wrap {
  display: flex;
  flex-wrap: wrap
}
.flex_center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.flex_between {
  display: flex;
  justify-content: space-between;
}
.flex_align {
  display: flex;
  align-items: center;
  justify-content: space-between
}
.flex_col {
  display: flex;
  flex-direction: column;
}
.flex_col_center {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.fixed {
  position: fixed;
}
.posr {
  position: relative
}
.bold {
  font-weight: bold;
}
.center {
  text-align: center
}
.left {
  text-align: left
}
.right {
  text-align: right
}
.auto {
  margin-left: auto;
  margin-right: auto;
}
.red {
  color: var(--red);
}
.txt_line {
  text-decoration: underline;
}
.m0a {
  display: block;
  margin: 0 auto;
}
.f_big {
  font-size: 150%;
}
.f_sm {
  font-size: 80%;
}
/*==========================================================
                       H E A D E R
==========================================================*/
header {
	position: absolute;
	top: 30px;
	left: 0;
	width: 100%;
	z-index: 999;
	padding-top: 27px;
}
header .inner {
	width: 100%;
	max-width: 1868px;
	padding: 0 27px;
}
.logo {
	margin: 0;
}
.top_btn {
	margin: 0;
	position: fixed;
	top: 0;
	right: 11px;
}
.top_btn a {
	display: block;
	background: url("../../img/lp/top_bg.svg") no-repeat top center/100% auto;
	color: #fff;
	width: 104px;
	height: 359px;
	font-size: 16px;
	font-weight: 700;
	padding-top: 24px;
	text-align: center;
	white-space: nowrap;
}
.top_btn a:before {
	content: '';
	position: relative;
	display: block;
	background: url("../../img/lp/icon_line.svg") no-repeat top center/100% auto;
	width: 54px;
	height: 52px;
	margin: 0 auto 15px;
}
.top_btn .txt {
	-webkit-writing-mode: vertical-rl;
-moz-writing-mode: vertical-rl;
-ms-writing-mode: vertical-rl;
writing-mode: vertical-rl;
-webkit-text-orientation: mixed;
-moz-text-orientation: mixed;
-ms-text-orientation: mixed;
text-orientation: mixed;
-ms-writing-mode: tb-rl;
	display: inline-block;
}
.top_btn .en {
    writing-mode: horizontal-tb;
    line-height: 1em;
	letter-spacing: 0;
}
.top_btn .line {
    background: var(--yellow);
    color: var(--green);
    display: inline-block;
    padding: 6px 0 2px;
    letter-spacing: 0.19em;
	line-height: 1.5em;
}
.top_btn .plus {
    width: 14px;
    height: 14px;
    display: inline-block;
    position: relative;
	margin: 7px 0;
}
.top_btn .plus:before, .top_btn .plus:after {
	content: '';
	position: absolute;
	background: #fff;
}
.top_btn .plus:before {
	width: 100%;
	height: 2px;
	left: 0;
	top: calc(50% - 1px);
}
.top_btn .plus:after {
	height: 100%;
	width: 2px;
	top: 0;
	left: calc(50% - 1px);
}
.top_btn .line:nth-child(3) {
    padding-bottom: 5px;
    margin: 0 0 4px;
	height: 65px;
}
.idx_clr01 {
    color: var(--yellow);
}
.top_btn .lager {
    font-size: 118.75%;
    letter-spacing: 0.075em;
    display: inline-block;
    margin-right: 10px;
}
.top_btn .dot {
    font-size: 16px;
    transform: rotate(30deg);
    display: inline-block;
}
.top_btn .lager .en {
	font-size: 105.27%;
}
/*==========================================================
                  M A I N    V I S U A L
==========================================================*/
.mv {
    margin: 30px 18px;
    padding: 0 0 39px;
    position: relative;
    z-index: 3;
	background: var(--mcolor);
	margin-bottom: 25px;
  width: calc(100% - 36px);
}
.mv:after {
	content: '';
	position: absolute;
	width: 100%;
	height: calc(100% - 203px);
	top: 0;
	left: 0;
	background: url("../../img/lp/idx_mv.jpg") no-repeat top center/cover;
	z-index: -2;
	pointer-events: none;
}
.mv .inner {
	width: 100%;
	max-width: 1640px;
	padding-top: 404px;
}
.mv_img {
    text-align: center;
	margin: 0 0 18px;
}
.mv_list {
    display: flex;
    justify-content: space-between;
}
.mv_list dl {
    background: #fff;
    width: 100%;
    margin-right: 20px;
    border-radius: 10px;
    padding: 19px 27px 26px;
	box-shadow: 0px 0px 12px 0px rgba(0,0,0,0.12);
}
.mv_list dl:last-child {
	margin-right: 0;
}
.mv h2 {
    font-size: 34px;
    font-weight: 500;
    font-family: var(--f-ttl);
    letter-spacing: 0.12em;
	-webkit-writing-mode: vertical-rl;
-moz-writing-mode: vertical-rl;
-ms-writing-mode: vertical-rl;
writing-mode: vertical-rl;
-webkit-text-orientation: mixed;
-moz-text-orientation: mixed;
-ms-text-orientation: mixed;
text-orientation: mixed;
-ms-writing-mode: tb-rl;
	position: absolute;
	top: 103px;
    right: calc(50% + 320px);
	line-height: 1.8em;
	white-space: nowrap;
}
.mv h2 .num {
    writing-mode: horizontal-tb;
    line-height: 1em;
    display: inline-block;
    margin: 0 0 4px;
	letter-spacing: 0;
}
.mv h2 .dot {
    display: inline-block;
    font-size: 91.17%;
    position: relative;
    top: 2px;
    left: 2px;
}
.mv_list dt {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    border-bottom: 1px solid var(--gray);
    padding: 0 0 12px;
	margin: 0 0 26px;
}
.mv_list dt .star img {
    margin-right: 2.4px;
	margin-top: -1px;
}
.mv_list dt .star {
    font-size: 16px;
    font-weight: bold;
    color: var(--dark);
    display: flex;
    align-items: center;
}
.mv_list dt .star .num {
    display: inline-block;
    margin-left: 8px;
}
.mv_list dt .time {
    letter-spacing: 0.01em;
	color: var(--black);
}
.mv_list dt .time .num {
    margin-left: 15px;
}
.mv_list dd {
    font-size: 16px;
    line-height: 1.5em;
	padding: 0 5px;
	letter-spacing: 0.05em;
}
.bg_line {
	background-image: linear-gradient(0deg, #ffffff 4.17%, #b1a430 4.17%, #b1a430 50%, #ffffff 50%, #ffffff 54.17%, #b1a430 54.17%, #b1a430 100%);
background-size: 48.00px 48.00px;
	color: #fff;
	font-weight: 700;
}
/*==========================================================
                M A I N    C O N T E N T
==========================================================*/
/* use private */
/*==================== SEC01 ===================*/
.sec01 {
	background: url("../../img/lp/sec01_bg.jpg") no-repeat top center/cover;
	color: #fff;
	padding-top: 127px;
	height: 820px;
	margin-bottom: 29px;
}
.idx_h3 {
    font-size: 22px;
    font-weight: 600;
	-webkit-writing-mode: vertical-rl;
-moz-writing-mode: vertical-rl;
-ms-writing-mode: vertical-rl;
writing-mode: vertical-rl;
-webkit-text-orientation: mixed;
-moz-text-orientation: mixed;
-ms-text-orientation: mixed;
text-orientation: mixed;
-ms-writing-mode: tb-rl;
	letter-spacing:  0.095em;
	margin: 0 0 101px -14px;
}
.idx_h3 .lager {
    display: block;
    font-size: 250%;
    font-family: var(--f-ttl);
    line-height: 1.45em;
    margin-right: 14px;
	letter-spacing: 0.092em;
	font-weight: 700;
	white-space: nowrap;
}
.idx_h3 .num {
    display: inline-block;
    writing-mode: horizontal-tb;
    line-height: 1em;
    margin: -2px -3px 7px 0;
    letter-spacing: 0.05em;
}
.idx_h3 .small {
    display: inline-block;
    border: 1px solid;
    padding: 9px 1px 7px;
	margin: 4px 0 0;
}
.idx_txt {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.025em;
    line-height: 2em;
}
/*==================== SEC02 ===================*/
.sec02 {
	background: url("../../img/lp/sec02_bg.jpg") no-repeat top center/cover;
	color: #fff;
	padding-top: 118px;
	height: 820px;
	margin-bottom: 29px;
	text-align: right;
}
.sec02 .idx_h3 {
    text-align: left;
    float: right;
	margin: 0 0 57px 0;
}
.sec02 .idx_txt {
	clear: both;
}
.sec02 .idx_h3 .small {
    margin: 2px 0 0;
}
.sec02 .idx_h3 .lager {
    margin-right: 10px;
    line-height: 1.3em;
}
/*==================== SEC03 ===================*/
.sec03 {
	background: url("../../img/lp/sec03_bg.jpg") no-repeat top center/cover;
	color: #fff;
	padding-top: 119px;
	height: 820px;
	margin-bottom: 29px;
}
.sec03 .idx_h3 {
    margin-bottom: 56px;
}
.sec03 .idx_h3 .lager {
    line-height: 1.3em;
    margin: 0 11px 0 8px;
}
.sec03 .idx_h3 .lager .line {
    margin: -5px 0 0;
    font-size: 109.09%;
    letter-spacing: 0.05em;
}
.sec03 .idx_h3 .small {
    margin: 2px 0 0;
    padding: 7px 1px 9px;
}
/*==================== SEC04 ===================*/
.sec04 {
	background: url("../../img/lp/sec04_bg.jpg") no-repeat top center/cover;
	color: #fff;
	padding-top: 127px;
	height: 820px;
	text-align: right;
}
.sec04 .idx_h3 {
    text-align: left;
    float: right;
	margin: 0 0 70px 0;
}
.sec04 .idx_txt {
	clear: both;
}
.sec04 .idx_h3 .small {
    margin: 2px 0 0;
	padding-bottom: 8px;
}
.sec04 .idx_h3 .lager {
    line-height: 1.3em;
    margin-right: 10px;
}
/*==================== SEC05 ===================*/
.sec05 {
    padding: 110px 0 87px;
}
.sec05 .inner {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
	flex-wrap: wrap;
}
.sec05_h3 {
    font-size: 43px;
    font-weight: 600;
    color: #060606;
	font-family: var(--f-ttl);
	line-height: 1.4em;
	margin-left: -9px;
	letter-spacing: 0.137em;
}
.sec05_h3 .en {
    writing-mode: horizontal-tb;
    line-height: 1em;
    display: inline-block;
    margin: -2px 0 8px;
}
.sec05_h3:before {
	content: '';
	position: relative;
	display: block;
	background: url("../../img/lp/sec05_icon01.svg") no-repeat center center/100% auto;
	width: 96px;
	height: 96px;
	margin: 0 auto 25px;
}
.sec05_main {
    width: 864px;
}
.sec05_bnr {
    height: 250px;
    border-radius: 12px;
    margin: 0 0 50px;
    position: relative;
	background: url("../../img/lp/sec05_bnr01.jpg") no-repeat center center/cover;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.sec05_bnr_circle {
	width: 433px;
	height: 100%;
	position: relative;
	margin-left: 25px;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}
.sec05_bnr_circle_main {
    width: 100%;
    height: 433px;
    background: #fff;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    border-radius: 50%;
}
.sec05_bnr_circle_line {
    margin: 0;
    position: absolute;
    width: 121px;
    height: 121px;
    background: var(--green);
    z-index: 3;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    border-radius: 50%;
    left: -22px;
    top: 10px;
    font-size: 17px;
    font-weight: 600;
    line-height: 1em;
	padding: 2px 0 0;
    letter-spacing: 0.025em;
}
.sec05_bnr_circle_ttl {
    font-family: var(--f-ttl);
    font-size: 19px;
    font-weight: 600;
    color: var(--mcolor);
	margin: -5px 0 10px;
}
.sec05_bnr_circle_ttl .lager {
    display: block;
    font-size: 205.3%;
    line-height: 1.18em;
	letter-spacing: 0.025em;
}
.sec05_bnr_circle_ttl .note {
    display: inline-block;
    background: var(--red);
    color: #fff;
    border-radius: 30px;
    letter-spacing: 0.025em;
    padding: 0 8px 1px 16px;
    margin: 0 0 15px;
}
.sec05_bnr_circle_txt {
    font-size: 16px;
    font-weight: 700;
    color: var(--mcolor);
    letter-spacing: 0.035em;
    line-height: 1.375em;
    padding-right: 4px;
}
.sec05_bnr_list {
    display: flex;
    margin: auto 24px -7px 0;
}
.sec05_bnr_list li {
    width: 85px;
    height: 213px;
    background: var(--mcolor);
    color: #fff;
    margin-left: 5px;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    padding: 27px 0 0;
    letter-spacing: 0.12em;
	line-height: 1.5em;
}
.sec05_bnr_list li .txt {
	-webkit-writing-mode: vertical-rl;
-moz-writing-mode: vertical-rl;
-ms-writing-mode: vertical-rl;
writing-mode: vertical-rl;
-webkit-text-orientation: mixed;
-moz-text-orientation: mixed;
-ms-text-orientation: mixed;
text-orientation: mixed;
-ms-writing-mode: tb-rl;
	text-align: left;
	display: inline-block;
}
.sec05_bnr_list li .txt .en {
    writing-mode: horizontal-tb;
    line-height: 1em;
    display: inline-block;
	margin: 0 0 2px;
}
.sec05_list {
    display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
}
.sec05_item {
    width: calc(50% - 10px);
    background: #fff;
    border-radius: 8px;
    padding: 22px 22px 27px;
	margin-bottom: 20px;
}
.sec05_itm_img {
    position: relative;
	margin: 0 0 18px;
}
.sec05_itm_img a {
	display: block;
	transition: all 0.3s;
	position: relative;
}
.sec05_itm_img a:after {
    content: '';
	position: absolute;
	width: 44px;
	height: 44px;
	right: 15px;
	bottom: 14px;
}
.sec05_itm_ttl {
    font-size: 22px;
    font-weight: 700;
    color: var(--black);
    border-bottom: 2px solid #dedede;
    padding: 0 0 10px 2px;
    margin: 0 0 14px;
    letter-spacing: 0.04em;
}
.sec05_itm_txt {
    line-height: 1.61em;
    color: var(--mcolor);
	margin: 0 0 37px 2px;
}
.sec05_itm_price {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 700;
	padding-right: 4px;
}
.sec05_itm_price .price {
    font-size: 20px;
    letter-spacing: 0.07em;
    margin: 4px 0 0 2px;
}
.sec05_itm_price .price .num {
    font-size: 140%;
}
.idx_cart {
    width: 227px;
    height: 56px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--mcolor);
    color: #fff;
    border-radius: 6px;
    transition: all 0.3s;
	font-weight: 700;
	letter-spacing: 0.025em;
}
.idx_cart:before {
	content: '';
	position: relative;
	display: inline-block;
	background: url("../../img/lp/icon_cart.svg") no-repeat center center/100% auto;
	width: 26px;
	height: 23px;
	margin: 0 7px 0 -4px;
}
.sec05_product {
    width: 100%;
    height: 302px;
    border-radius: 7px;
    display: flex;
    justify-content: flex-end;
    padding: 69px 46px 46px 0;
    background: url(../../img/lp/sec05_img05.jpg) no-repeat center center/cover;
    color: #fff;
    margin-top: 38px;
    align-items: center;
}
.sec05_product_main {
    width: 513px;
}
.sec05_product_note {
    font-weight: 700;
    display: flex;
    align-items: center;
    overflow: hidden;
	white-space: nowrap;
	letter-spacing: 0.025em;
	margin: 0 0 11px;
}
.sec05_product_note:after {
	content: '';
	position: relative;
	display: inline-block;
	width: 100%;
	margin-left: 18px;
	background: #d0ccc7;
	height: 2px;
}
.sec05_product_cart .idx_cart {
    margin: 0 0 0 auto;
}
.sec05_product_ttl {
    font-size: 30px;
    font-family: var(--f-ttl);
    font-weight: 600;
    line-height: 1.4em;
    margin: 0 0 5px;letter-spacing: 0.023em;
}
/*==================== SEC06 ===================*/
.sec06_top {
	margin-bottom: 94px;
}
.sec06_top .inner {
    width: 100%;
    max-width: 1696px;
}
.sec06_top_main {
    height: 700px;
    border-radius: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
	background: url("../../img/lp/sec06_img_top.jpg") no-repeat top center/cover;
	padding: 0 0 109px;
}
.sec06_h3 {
    font-size: 40px;
    font-weight: 700;
    font-family: var(--f-ttl);
    color: var(--mcolor);
	letter-spacing: 0.05em;
	position: absolute;
    top: 98px;
    width: 60px;
    left: calc(50% - 30px);
}
.sec06_h3 .txt {
	-webkit-writing-mode: vertical-rl;
-moz-writing-mode: vertical-rl;
-ms-writing-mode: vertical-rl;
writing-mode: vertical-rl;
-webkit-text-orientation: mixed;
-moz-text-orientation: mixed;
-ms-text-orientation: mixed;
text-orientation: mixed;
-ms-writing-mode: tb-rl;
	white-space: nowrap;
}
.sec06_top_link {
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.sec06_top_link li {
    width: calc(50% - 127px);
    background: var(--mcolor);
    position: relative;
    margin-bottom: 52px;
    transition: all 0.3s;
}
.sec06_top_link li:before, .sec06_top_link li:after {
	content: '';
	position: absolute;
	border-color: #fff;
	border-style: solid;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 2;
	pointer-events: none;
}
.sec06_top_link li:before {
	width: calc(100% - 20px);
	height: calc(100% - 10px);
	border-width: 0 1px 0 1px;
}
.sec06_top_link li:after {
	height: calc(100% - 20px);
	width: calc(100% - 10px);
	border-width: 1px 0 1px 0;
}
.sec06_top_link li a {
    display: flex;
    text-decoration: none;
    font-size: 20px;
    color: #fff;
    font-weight: 700;
    align-items: center;
    height: 108px;
    position: relative;
    padding: 30px 39px;
    letter-spacing: 0.025em;
	line-height: 1.25em;
	z-index: 1;
}
.sec06_top_link li a:after {
	content: '';
	position: absolute;
	background: url("../../img/lp/sec06_arr.svg") no-repeat center center/100% auto;
	width: 33px;
	height: 33px;
	right: 33px;
	top: calc(50% - 16px);
}
.sec06_top_link li a:before {
	content: '';
	position: absolute;
	width: 0px;
   height: 0px;
   border-style: solid;
   border-width: 35px 0 0 55px;
   border-color: transparent transparent transparent var(--mcolor);
	right: -27px;
	top: calc(50% - 27px);
	pointer-events: none;
	z-index: -2;
}
.sec06_top_link li:nth-child(2) a:before {
    right: auto;
    left: -27px;
    transform: rotateY(180deg);
}
.sec06_top_link li:nth-child(3) a:before {
    transform: rotateX(180deg);
	top: calc(50% - 9px);
}
.sec06_top_link li:nth-child(4) a:before {
    right: auto;
    left: -27px;
    transform: rotate(180deg);
	top: calc(50% - 9px);
}
.sec06_top_link li:nth-child(n+3) {
	margin-bottom: 0;
}
.sec06_list {
	background: url("../../img/lp/sec06_bg.jpg") top 67px center;
	padding: 0 0 102px;
}
.sec06_item {
    background: #fff;
    padding: 67px 0 70px;
	margin-bottom: 128px;
}
.sec06_item .inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.sec06_itm_main {
    width: 744px;
    flex-shrink: 0;
    margin-right: 105px;
}
.sec06_itm_img {
    flex-shrink: 0;
    margin: 67px -459px 0 0;
    position: relative;
}
.sec06_itm_note {
    display: inline-flex;
    width: 423px;
    height: 108px;
    font-size: 20px;
    font-weight: 700;
    background: var(--mcolor);
    color: #fff;
    justify-content: center;
    align-items: center;
    text-align: center;
    position: relative;
    letter-spacing: 0.025em;
	z-index: 2;
	margin: 0 0 66px;
}
.sec06_itm_note:before, .sec06_itm_note:after {
	content: '';
	position: absolute;
	border-color: #fff;
	border-style: solid;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 2;
	pointer-events: none;
}
.sec06_itm_note:before {
	width: calc(100% - 20px);
	height: calc(100% - 12px);
	border-width: 0 1px 0 1px;
}
.sec06_itm_note:after {
	height: calc(100% - 20px);
	width: calc(100% - 12px);
	border-width: 1px 0 1px 0;
}
.sec06_itm_note .txt:after {
	content: '';
	position: absolute;
	width: 0px;
   height: 0px;
   border-style: solid;
   border-width: 55px 35px 0 0;
   border-color: #10291B transparent transparent transparent;
	bottom: -28px;
	left: 68px;
	z-index: -2;
	pointer-events: none;
}
.sec06_itm_main_info {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.sec06_itm_txt {
    width: 598px;
}
.sec06_itm_ttl {
    font-size: 40px;
    font-weight: 600;
    font-family: var(--f-ttl);
	line-height: 1.35em;
	letter-spacing: 0.075em;
	margin-left: -6px;
}
.sec06_itm_ttl .en {
    writing-mode: horizontal-tb;
    line-height: 1em;
    display: inline-block;
    margin: -2px 0 4px;
}
.sec06_itm_txt p {
    line-height: 1.95em;
    margin: 0 0 35px;
	letter-spacing: 0.025em;
}
.sec06_itm_txt p:last-child {
	margin-bottom: 0;
}
.sec06_itm_img li:nth-child(2) {
    position: absolute;
    bottom: -113px;
    left: -285px;
}
.sec06_item:nth-child(2n) .inner {
    flex-direction: row-reverse;
}
.sec06_item:nth-child(2n) .sec06_itm_main {
    margin: 0 0 0 108px;
}
.sec06_item:nth-child(2) .sec06_itm_img {
    margin: -102px 0 0 410px;
}
.sec06_item:nth-child(2) .sec06_itm_img li:nth-child(2) {
    bottom: -327px;
    right: -62px;
    left: auto;
}
.sec06_item:nth-child(2n) .sec06_itm_ttl {
    margin: 0 -6px 0 0;
}
.sec06_item:nth-child(2n) .sec06_itm_main_info {
    flex-direction: row-reverse;
	clear: both;
}
.sec06_item:nth-child(2n) .sec06_itm_note {
    float: right;
}
.sec06_item:nth-child(2n) .sec06_itm_note .txt::after {
    left: auto;
    right: 63px;
    transform: rotateY(180deg);
}
.sec06_item:nth-child(2) {
    padding-bottom: 60px;
}
.sec06_item:nth-child(3) .sec06_itm_img {
    margin: -124px -360px 0 0;
}
.sec06_item:nth-child(3) .sec06_itm_img li:nth-child(2) {
	bottom: -270px;
	left: 251px;
}
.sec06_item:nth-child(3) .sec06_itm_ttl .dot {
    display: inline-block;
    margin: -21px 0 3px;
}
.sec06_item:nth-child(3) .sec06_itm_ttl .dot:not(:first-child) {
    display: inline-block;
    margin: 8px 0 -8px;
}
.sec06_item:nth-child(3) {
    padding-bottom: 66px;
}
.sec06_item:nth-child(4) .sec06_itm_img {
    margin: 81px 0 0 -410px;
}
.sec06_item:nth-child(4) .sec06_itm_img li:nth-child(2) {
	right: -47px;
	left: auto;
	bottom: auto;
	top: -185px;
}
.sec06_item:nth-child(4) .sec06_itm_main {
    margin: 0 0 0 103px;
}
.sec06_item:nth-child(4) {
	padding-bottom: 58px;
	margin-bottom: 101px;
}
/*==================== SEC07 ===================*/
.sec07 {
	background: url("../../img/lp/sec07_bg.jpg") no-repeat top center/cover;
	color: #fff;
	padding: 75px 0 108px;
}
.sec07_h3 {
    font-size: 40px;
    font-weight: 600;
    font-family: var(--f-ttl);
    line-height: 1.45em;
    letter-spacing: 0.15em;
    margin-left: -8px;
}
.sec07_h3 .txt {
	-webkit-writing-mode: vertical-rl;
-moz-writing-mode: vertical-rl;
-ms-writing-mode: vertical-rl;
writing-mode: vertical-rl;
-webkit-text-orientation: mixed;
-moz-text-orientation: mixed;
-ms-text-orientation: mixed;
text-orientation: mixed;
-ms-writing-mode: tb-rl;
}
.sec07_top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
	margin: 0 0 46px;
}
.sec07_top_main {
    width: 884px;
	padding-top: 61px;
	position: relative;
	z-index: 2;
}
.sec07_top_main:after {
	content: '';
	position: absolute;
	background: url("../../img/lp/sec07_icon.svg") no-repeat center center/100% auto;
	width: 206px;
	height: 206px;
	z-index: -2;
	pointer-events: none;
	right: -39px;
	top: -10px;
}
.sec07_top_ttl {
    font-size: 24px;
    font-weight: 600;
    font-family: var(--f-ttl);
    border-bottom: 1px solid;
    letter-spacing: 0.025em;
    padding: 0 0 8px;
	margin: 0 0 53px;
}
.sec07_list {
    background: #fff;
    display: flex;
    justify-content: space-between;
    padding: 60px 45px 51px;
    color: var(--mcolor);
}
.sec07_itm_ttl {
    font-size: 20px;
    text-align: center;
    font-weight: 700;
    line-height: 1.55em;
    letter-spacing: 0.025em;
	margin: 0 0 18px;
}
.sec07_item {
    width: 100%;
    margin-right: 22px;
}
.sec07_item:last-child {
	margin-right: 0;
}
.sec07_itm_img {
    text-align: center;
	margin: 0 0 38px;
}
.sec07_itm_img img {
	border-radius: 50%;
}
.sec07_item:nth-child(2) .sec07_itm_ttl {
	letter-spacing: -0.02em;
}
/*==================== SEC08 ===================*/
.sec08 {
    padding: 104px 0 112px;
}
.sec08 .sec05_h3:before {
    margin-bottom: 27px;
}
.sec08_main {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start;
}
.sec05_frame {
    background: #fff;
	max-width: 1530px;
	margin: 153px auto 105px;
	display: flex;
}
.sec05_frame_h3 {
    width: 131px;
    margin: -69px auto 47px;
    position: relative;
    left: -5px;
}
.sec05_frame_item {
    position: relative;
    padding: 1px 62px 49px;
    z-index: 2;
    width: 100%;
    margin: 0 0 78px;
}
.sec05_frame_item:before, .sec05_frame_item:after {
	content: '';
	position: absolute;
	pointer-events: none;
	border-color: #BEBEBE;
	border-style: solid;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.sec05_frame_item:before {
	width: 100%;
	height: calc(100% - 26px);
	border-width: 1px 0 1px 0;
}
.sec05_frame_item:after {
	height: 100%;
	width: calc(100% - 26px);
	border-width: 0 1px 0 1px;
}
.sec05_frame_itm_ttl {
    text-align: center;
    font-size: 30px;
    color: #060606;
    font-weight: 600;
    font-family: var(--f-ttl);
    position: relative;
    z-index: 2;
	margin: -15px 0 29px;
	letter-spacing: 0.025em;
}
.sec05_frame_itm_ttl .txt {
	display: inline-block;
	background: #fff;
	width: 432px;
}
.sec05_frame_itm_img {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
}
.sec05_frame_itm_img:after {
    content: '';
    position: absolute;
    background: url(../../img/lp/sec08_icon.svg) no-repeat center center/100% auto;
    width: 61px;
    height: 61px;
    right: 29px;
    bottom: 22px;
}
.sec05_frame_itm_main {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    color: var(--black);
}
.sec05_frame_itm_left {
    width: 489px;
    background: #F7F7F7;
    padding: 32px 37px 23px ;
	margin-top: 13px;
	margin-right: 30px;
}
.sec05_frame_itm_right {
    width: 436px;
	padding-top: 9px;
}
.sec05_frame_itm_main_ttl {
    font-size: 16px;
    font-weight: 700;
    display: flex;
    align-items: center;
    overflow: hidden;
	white-space: nowrap;
	margin: 0 0 22px;
	letter-spacing: 0.025em;
}
.sec05_frame_itm_main_ttl:after {
    content: '';
    position: relative;
    display: inline-block;
    width: 100%;
    background: #e2e2e2;
    height: 2px;
    margin-left: 27px;
	top: -2px;
}
.sec05_frame_itm_right .sec05_frame_itm_main_ttl {
    margin: 0 0 18px;
}
.sec05_frame_itm_left_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	padding-left: 2px;
}
.sec05_frame_itm_left_list li {
    border-bottom: 1px solid var(--gray);
    width: 200px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 0 4px;
    margin: 0 0 16.5px;
	max-width: calc(50% - 6px);
    line-height: 1.5em;
}
.sec05_frame_itm_left_list li .ttl {
	font-weight: 700;
}
.sec05_frame_itm_left_list li .txt {
	text-align: right;
}
.sec05_frame_itm_left_txt {
    font-size: 16px;
    margin-top: 9px;
}
.sec05_frame_itm_right_list {
	counter-reset: list05;
}
.sec05_frame_itm_right_list li {
    line-height: 1.5em;
    position: relative;
    margin: 0 0 10px;
    padding-left: 25px;
    letter-spacing: 0.025em;
}
.sec05_frame_itm_right_list li:last-child {
	margin-bottom: 0;
}
.sec05_frame_itm_right_list li::before {
  counter-increment: list05;
  content: counter(list05);
	font-weight: 700;
    position: absolute;
    left: 0;
    top: -2px;
}
.sec05_frame_item:nth-child(3) {
    padding-bottom: 72px;
	margin-bottom: 88px;
}
.sec05_frame_item:nth-child(3) .sec05_frame_itm_left {
    padding-bottom: 31px;
}
.sec05_frame_item:nth-child(4) .sec05_frame_itm_ttl {
    margin-bottom: 12px;
}
.sec05_frame_itm_left_list li .ttl.small {
    font-size: 15px;
    letter-spacing: 0.025em;
}
.sec05_frame_item:nth-child(4) .sec05_frame_itm_right_list li {
    margin: 0 0 8px;
}
.sec05_frame_item:nth-child(4) {
    padding-bottom: 39px;
    margin-bottom: 83px;
}
.sec05_bottom {
    background: #F7F7F7;
    padding: 56px 48px 53px 63px;
    position: relative;
    color: var(--black);
    width: 100%;
    margin: 0 0 114px;
}
.sec05_bottom_note {
    width: 113px;
    color: #fff;
    margin: 0;
    position: absolute;
    right: 47px;
    top: -15px;
    font-size: 27px;
    font-weight: 600;
    z-index: 3;
    letter-spacing: 0.15em;
    line-height: 1.4em;
	filter: drop-shadow(3px 3px 6px rgba(0, 0, 0, 0.16));
}
.sec05_bottom_note .txt {
	clip-path: polygon(100% 0, 100% 100%, 50% 94%, 0 100%, 0 0);
    padding: 26px 18px 0;
    font-family: var(--f-ttl);
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: mixed;
    -moz-text-orientation: mixed;
    -ms-text-orientation: mixed;
    text-orientation: mixed;
    -ms-writing-mode: tb-rl;
    height: 289px;
	display: block;
    background: var(--mcolor);
}
.sec05_bottom_note .first_line {
    margin-top: -5px;
}
.sec05_bottom_txt {
    max-width: 809px;
    line-height: 1.78em;
	letter-spacing: 0.025em;
	margin: 0 0 54px;
}
.sec05_bottom_ttl {
    font-size: 29px;
    font-weight: 600;
    font-family: var(--f-ttl);
    letter-spacing: 0.025em;
    margin: 0 0 37px;
}
.sec05_bottom .sec05_frame_itm_left {
    background: #fff;
    padding: 31px 34px 23px 33px;
    margin: 0 0 8px;
    width: 510px;
	margin-right: 30px;
}
.sec05_bottom .sec05_frame_itm_main_ttl:after {
    margin-left: 40px;
}
.sec05_bottom .sec05_frame_itm_left .sec05_frame_itm_main_ttl {
    margin: 0 0 29px;
}
.sec05_bottom .sec05_frame_itm_right {
    padding: 0;
    margin-top: -4px;
}
.sec05_bottom .sec05_frame_itm_right_list li:not(:last-child) {
    margin: 0 0 8px;
}
.sec05_bottom .sec05_frame_itm_main {
    align-items: normal;
}
.sec05_bottom_item {
    margin-top: 78px;
}
.sec05_bottom_item .sec05_bottom_txt {
    max-width: 100%;
    margin: 0 0 39px;
}
/*==================== SEC09 ===================*/
.sec09 {
	background: url("../../img/lp/sec09_bg.jpg") no-repeat center center/cover;
	padding: 134px 0 95px;
}
.sec09_top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 21px;
}
.sec09_h3 {
    flex-shrink: 0;
    font-size: 43px;
    font-weight: 600;
    color: #fff;
    font-family: var(--f-ttl);
    position: relative;
    z-index: 3;
	letter-spacing: 0.165em;
	line-height: 1.35em;
	margin-left: -9px;
}
.sec09_h3:after {
	content: '';
	position: absolute;
	background: url("../../img/lp/sec09_icon.svg") no-repeat center center/100% auto;
	width: 196px;
	height: 196px;
	z-index: -3;
	pointer-events: none;
	left: -130px;
	bottom: -90px;
}
.sec09_h3 .txt {
	display: block;
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: mixed;
    -moz-text-orientation: mixed;
    -ms-text-orientation: mixed;
    text-orientation: mixed;
    -ms-writing-mode: tb-rl;
}
.sec09_item {
    background: #fff;
    border-radius: 8px;
    padding: 35px 35px 23px 38px;
	box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
	color: var(--black);
	display: flex;
    flex-direction: column;
}
.sec09_itm_txt {
    margin: 0 0 auto;
}
.sec09_top .sec09_item {
    width: 879px;
}
.sec09_list {
    display: flex;
    justify-content: space-between;
}
.sec09_list .sec09_item {
    width: 304px;
	padding-bottom: 22px;
}
.sec09_list .sec09_item:not(:last-child) {
	margin-right: 25px;
}
.sec09_list .sec09_item:nth-child(1) {
    width: 441px;
}
.sec09_itm_txt p {
    font-size: 16px;
    letter-spacing: 0.025em;
    line-height: 1.75em;
	margin: 0 0 28px;
}
.sec09_itm_info {
    border-top: 1px solid var(--gray);
    text-align: right;
    font-size: 14px;
    font-weight: 700;
    color: var(--mcolor);
    letter-spacing: 0.025em;
	margin-top: -8px;
	padding-top: 8px;
}
.sec09_list .sec09_itm_info {
    margin-top: -1px;
}
/*==================== SEC10 ===================*/
.sec10{
	background: url("../../img/lp/sec10_bg.jpg") no-repeat top center/cover;
	padding: 118px 0 130px;
}
.sec10_top {
    display: flex;
    color: #fff;
    justify-content: space-between;
    align-items: flex-start;
	margin: 0 0 90px;
}
.sec10_h3 {
    font-size: 40px;
    font-weight: 600;
    font-family: var(--f-ttl);
    line-height: 1.55em;
    flex-shrink: 0;
    letter-spacing: 0.025em;
}
.sec10_top_main {
    width: 597px;
    padding-top: 7px;
}
.sec10_top_ttl {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.025em;
    border-bottom: 2px solid #88938c;
    padding: 0 0 6px;
    margin: 0 0 24px;
}
.sec10_item {
    background: #fff;
    display: flex;
    flex-direction: row-reverse;
    margin: 0 0 19px;
}
.sec10_item:last-child {
	margin-bottom: 0;
}
.sec10_itm_img {
    flex-shrink: 0;
    width: 403px;
	position: relative;
}
.sec10_itm_img:before {
	content: '';
	position: absolute;
	background: url("../../img/lp/sec05_icon01.svg") no-repeat center center/100% auto;
	width: 50px;
	height: 50px;
	top: 16px;
	left: 16px;
}
.sec10_itm_main {
    padding: 67px 47px 33px 70px;
	color: var(--black);
}
.sec10_itm_info {
    font-weight: 700;
    color: var(--mcolor);
    letter-spacing: 0.025em;
	margin: 0 0 9px;
}
.sec10_itm_info .note {
    background: var(--mcolor);
    color: #fff;
    font-size: 88.89%;
    display: inline-block;
    letter-spacing: 0.025em;
    padding: 2px 7px 1px 8px;
    margin-right: 10px;
    position: relative;
    top: -1px;
}
.sec10_itm_ttl {
    font-size: 23px;
    font-weight: 700;
    letter-spacing: 0.025em;
    margin: 0 0 34px;
}
/*==================== SEC11 ===================*/
.sec11 {
	background: url("../../img/lp/sec11_bg.jpg") no-repeat center center/cover;
	padding: 53px 0 69px;
}
.sec11 .sec05_bnr {
    height: 436px;
    margin: 0;
	background-image: url("../../img/lp/sec11_bnr.jpg");
}
.sec11 .sec05_bnr:after {
	content: '';
	position: absolute;
	background: url("../../img/lp/sec08_icon.svg") no-repeat center center/100% auto;
	width: 91px;
	height: 91px;
	right: 22px;
	top: 19px;
}
.sec11 .sec05_bnr_circle {
    width: 507px;
    margin-left: 86px;
}
.sec11 .sec05_bnr_circle_main {
    height: 507px;
}
.sec11 .sec05_bnr_circle_line {
    width: 131px;
    height: 131px;
    font-size: 18px;
    top: 23px;
    left: 26px;
}
.sec11 .sec05_bnr_circle_ttl {
    font-size: 22px;
    margin: 5px 0 17px;
}
.sec11 .sec05_bnr_circle_ttl .lager {
    font-size: 218.18%;
    line-height: 1.2em;
}
.sec11 .sec05_bnr_circle_ttl .note {
    padding: 2px 17px 3px 25px;
	margin: 0 0 17px;
}
.sec11 .sec05_bnr_circle_txt {
    font-size: 18px;
    line-height: 1.78em;
}
.sec11 .sec05_bnr_list li {
    width: 96px;
    height: 240px;
    font-size: 18px;
    padding: 25px 0 0;
    letter-spacing: 0.175em;
    line-height: 1.5em;
	margin-left: 13px;
}
.sec11 .sec05_bnr_list {
    margin-bottom: -16px;
    margin-right: 57px;
}
/*==================== SEC12 ===================*/
.sec12 {
	background: url("../../img/lp/sec12_bg.jpg") no-repeat center center/cover;
	padding: 112px 0 177px;
	color: #fff;
}
.sec12 .inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.sec12_h3 {
    font-size: 40px;
    font-weight: 600;
    font-family: var(--f-ttl);
    letter-spacing: 0.12em;
    flex-shrink: 0;
    margin-left: -14px;
}
.sec12_h3 .txt {
    -webkit-writing-mode: vertical-rl;
    -moz-writing-mode: vertical-rl;
    -ms-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: mixed;
    -moz-text-orientation: mixed;
    -ms-text-orientation: mixed;
    text-orientation: mixed;
    -ms-writing-mode: tb-rl;
	display: block;
}
.sec12_btn {
    width: 565px;
	margin-top: 62px;
}
.sec12_btn li:not(:last-child) {
	margin-bottom: 23px;
}
.sec12_btn a {
    display: flex;
    align-items: center;
    height: 211px;
    border: 5px solid #fff;
    color: #fff;
    position: relative;
    transition: all 0.3s;
    padding: 40px 61px;
    font-weight: 700;
    letter-spacing: 0.025em;
}
.sec12_btn a:after {
	content: '';
	position: absolute;
	background: url("../../img/lp/icon_arr.svg") no-repeat center center/100% auto;
	width: 64px;
	height: 64px;
	right: 36px;
	top: calc(50% - 32px);
}
.sec12_btn .lager {
    display: block;
    font-family: var(--f-ttl);
    font-weight: 600;
    font-size: 183.33%;
    line-height: 1.5em;
    margin: -4px 0 2px;
}
.sec12_btn_tel .tel {
    display: block;
    font-size: 200%;
    font-family: var(--f-ttl);
    line-height: 1em;
    margin: 5px 0 11px;
	letter-spacing: 0.05em;
}
.sec12_btn_tel a {
    padding-top: 41px;
}
.sec12_btn_tel a:after {
	background-image: url("../../img/lp/icon_tel.svg");
}
/*==================== SEC13 ===================*/
.sec13 {
    padding: 53px 0 55px;
}
.sec13 .sec05_product {
    margin: 0;
}
.sec13 .sec05_product_note {
    font-size: 16px;
	margin-right: 18px;
	margin: 3px 18px 7px 0;
}
.sec13 .sec05_product_main {
    width: 463px;
}
.sec13 .sec05_product_note:after {
    margin-left: 27px;
}
.sec13 .sec05_product_ttl {
    font-size: 26px;
    line-height: 1.46em;
	margin-bottom: 10px;
}
/*==========================================================
                        F O O T E R
==========================================================*/
footer {
	background: #fff;
	text-align: center;
	padding: 63px 0 33px;
}
.f_logo {
    margin: 0 0 64px;
}
address {
  text-align: center;
  color: var(--mcolor);
  font-size: 16px;
}
/* BACK TO TOP */
.to_top {
  position: fixed;
  z-index: 11;
  width: 60px;
  height: 60px;
  bottom: 20px;
  right: 20px;
  cursor: pointer;
  transition: all .2s;
  opacity: 0;
  visibility: hidden
}
.to_top.show {
  transform: scale(1);
  opacity: 1;
  visibility: visible
}
.to_top a {
	display: block;
	transition: all 0.3s;
}
/* FIX EDGE ONLY  */
@supports (-ms-ime-align: auto) {}
/* FIREFOX ONLY */
@-moz-document url-prefix() {}
/* Safari 10.1+ (which is the latest version of Safari at this time) */
@media not all and (min-resolution: 0.001dpcm) {}