@charset "UTF-8";
/* CSS Document */

/*
	Reset CSS
-----------------------------------------------------------------------------------------------*/
/***
	The new CSS reset - version 1.7.3 (last updated 7.8.2022)
	GitHub page: https://github.com/elad2412/the-new-css-reset
***/
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)){
	all: unset;
	display: revert;
}
*,*::before,*::after{
	box-sizing: border-box;
}
a, button{
	cursor: pointer;
}
ol, ul, menu{
	list-style: none;
}
img{
	vertical-align: top;
	width: 100%;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none; /* クリックや右クリックを無効にする */
}
table{
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
input, textarea{
	-webkit-user-select: auto;
	user-select: auto;
}
textarea{
	white-space: revert;
}
meter{
	-webkit-appearance: revert;
	appearance: revert;
}
::placeholder{
	color: unset;
}
:where([hidden]){
	display: none;
}
:where([contenteditable]:not([contenteditable="false"])){
	-moz-user-modify: read-write;
	-webkit-user-modify: read-write;
	overflow-wrap: break-word;
	-webkit-line-break: after-white-space;
	line-break: after-white-space;
	-webkit-user-select: auto;
	user-select: auto;
}
:where([draggable="true"]){
	-webkit-user-drag: element;
}

/*
	Setting CSS
-----------------------------------------------------------------------------------------------*/
html{
	font-size: 62.5%;
}
body{
	font-size: 1.5em;
	font-family: 'Noto Sans JP', 'Hiragino Sans', 'Yu Gothic', 'Meiryo', 'Hiragino Kaku Gothic ProN', sans-serif;
	font-weight: 400;
	letter-spacing: 0.1rem;
	font-feature-settings: "palt";
	overflow-wrap: break-word;
}
p{
	line-height: 180%;
	text-align: justify;
}
a{
	color: #000;
	text-decoration:none;
	transition: all 0.3s;
}
a:hover img{
	opacity: 1;
}
h1,h2,h3,h4,h5,p,span{
	line-height: 1;
	letter-spacing: 0.2rem;
	font-feature-settings: "palt" 1;
}
a.txtLink{
	text-decoration: underline!important;
}
a.txtLink:hover{
	text-decoration: none!important;
}
a:hover{
	text-decoration: none;
	opacity: 0.6;
}
@media print, screen and (min-width:897px){
	/* iPad背景切れ対策 */
	body{
		min-width: 1200px;
	}
	/* tel pcのみ無効 */
	a[href^="tel:"]{
		pointer-events: none;
	}
}

/* 表示切替 */
.switch{
	visibility: hidden;
}
.sp{
	display: none;
}

/*
	common
-----------------------------------------------------------------------------------------------*/
:root{
	/* color */
	--green-bg: #EBF0EB;
	--light--green:#62C596;
	--light--green-60:#A1DCC0;
	--light--green-10:#EFF9F4;
	--deep--green:#2D5F5F;
	--green: #236D4A;
	--green-60: #7BA792;
	--red: #D75541;
	--red-60: #E7998D;
	--yellow: #D2A032;
	--yellow-60: #E4C684;
	--Blue: #1E467D;
	--pink: #F08C96;
	--ruby-gray: #828282;
	--txt-gray: #3C3C3C;
	/* shadow */
	/* border-radius */
	--border-radius-5: 5px;
    --border-radius-10: 10px;
	/* width */
	--width: 1280px;
	--w960: 960px;
	--w500: 500px;
	/* font-family */
	--ffOs: "Oswald";
	--noto-serif: "Noto Serif JP", serif;
	/* font-weight
	============================== */
	--light: 300;
	--regular: 400;
	--medium: 500;
	--bold: 600;
	--black: 900;
}

/* box
============================== */
/* wrapper */
#wrapper{
	position: relative;
	overflow: hidden;
}
[class^="container"] {
    margin: 0 auto;
    max-width: var(--width);
    padding: 100px 70px;
    position: relative;
    text-align: center;
}
/* sp */
@media screen and (max-width: 897px) {
	body{
		-webkit-text-size-adjust:100%;
		font-size: 1.4rem;
	}
	img{
		width:100%;
	}
	p{
		line-height: 150%;
	}
	.pc{
		display:none;
	}
	.sp{
		display:block;
	}
	br.sp{
		display:inline-block;
	}
	/*
		common
	-----------------------------------------------------------------------------------------------*/
	/* container */
	[class^="container"] {
		max-width: 640px;
		width: 100%;
		padding: 50px 30px;
	}
}
/*
	tit
-----------------------------------------------------------------------------------------------*/
[class^="section__box"] {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
	margin-bottom: 60px;
}
[class^="section__head"] {
	font-size: 5.0rem;
	font-weight: var(--bold);
	color: var(--green);
	line-height: 150%;
}
.section__head--white{
	color: #fff;
}
[class^="section__lead"] {
	font-size: 1.8rem;
	font-weight: var(--medium);
	text-align: center;
	line-height: 200%;
}
.section__lead--white{
	color: #fff;
}
.section__noto{
	font-size: 1.8rem;
	font-weight: var(--regular);
	text-align: center;
	letter-spacing: 0.1rem;
}
.section__noto::before {
    content: '※';
}
@media screen and (max-width: 897px) {
	[class^="section__box"] {
		gap: 20px;
		margin-bottom: 60px;
	}
	[class^="section__head"] {
		font-size: 2.4rem;
	}
	[class^="section__lead"] {
		font-size: 1.6rem;
	}
}
/*
	btn
-----------------------------------------------------------------------------------------------*/
[class^="btn__bass"] {
	display: flex;
    align-items: center;
    justify-content: center;
	color: #fff;
	border-radius: 50px;
    font-size: 2rem;
	position: relative;
	padding: 0 20px;
	box-shadow: 3px 3px 0px 0px rgba(0, 0, 0, 0.1);
	font-weight: var(--bold);
}
.btn__bass--register {
    background: var(--red);
    height: 70px;
    width: 330px;
	border: 2px solid var(--red);
}
.btn__bass--register:hover{
	background: #fff;
	color: var(--red);
	opacity: 1;
}
.btn__bass--login {
    background: var(--green);
    height: 70px;
    width: 330px;
	border: 2px solid var(--green);
}
.btn__bass--login:hover{
	background: #fff;
	color: var(--green);
	opacity: 1;
}
[class^="btn__bass--login"]::before {
    content: "登録済みの⽅は";
    position: absolute;
    left: 50%;
    top: -20px;
    transform: translateX(-50%);
    font-size: 1.2rem;
    font-weight: var(--medium);
    width: 100%;
    text-align: center;
    color: var(--green);
}
.btn__bass--bank {
    background: #fff;
    height: 45px;
    width: 215px;
	font-size: 1.6rem;
	color: var(--Blue);
	border-radius: var(--border-radius-5);
	box-shadow: none;
	border: 2px solid #fff;
}
.btn__bass--bank:hover {
    background: none;
	color: #fff;
}
.btn__bass--movie {
    background: var(--red);
    height: 70px;
    width: 330px;
	border: 2px solid var(--red);
}
.btn__bass--movie:hover{
	background: #fff;
	color: var(--red);
	opacity: 1;
}
@media screen and (max-width: 897px) {
	.btn__bass--register {
		max-width: 250px;
		width: 100%;
		min-height: 54px;
		height: 100%;
		margin: 0 auto;
		font-size: 1.6rem;
	}
	.btn__bass--login {
		max-width: 250px;
		width: 100%;
		min-height: 54px;
		height: 100%;
		margin: 0 auto;
		font-size: 1.6rem;
	}
}
/*
	headerWrapper
-----------------------------------------------------------------------------------------------*/
#header {
    height: 108px;
	background: #fff;
	position: fixed;
	z-index: 999999;
	width: 100%;
	transform: translateZ(0);
}
.header__box{
	align-items: center;
    display: flex;
    justify-content: space-between;
	height: 100%;
	padding: 0 35px;
}
.header__logo{
	max-width: 140px;
    width: 100%;
}
.header__nav{
	display: flex;
	gap: 20px;
	visibility: visible;
}
[class^="header__list"] {
	display: flex;
	gap: 10px;
}
[class^="gnav__item"] {
	font-weight: var(--medium);
    display: flex;
    align-items: center;
	padding: 0 20px;
	font-size: 1.4rem;
}
[class^="conversion__item"] {
    width: 140px;
    height: 38px;
	position: relative;
}
.header__login,
.header__register {
	position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--green);
    font-size: 1.6rem;
    font-weight: var(--bold);
    cursor: pointer;
	height: 100%;
    z-index: 9999;
	color: #fff;
	width: 100%;
	border-radius: var(--border-radius-5);
	position: relative;
	box-shadow: none;
}
.header__login{
    background: var(--green);
}
.header__login::before{
	content: "登録済みの⽅は";
	position: absolute;
	left: 50%;
	top: -22px;
	transform: translateX(-50%);
	font-size: 1.2rem;
	font-weight: var(--medium);
	text-align: center;
	width: 100%;
	color: var(--green);
}
.header__register {
    background: var(--red);
}
.hamburger {
	display: none;
	width: 32px;
	height: 18px;
	position: relative;
	background: none;
	border: none;
	cursor: pointer;
}

.hamburger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: #000;
	transition: 0.3s;
}
.header__nav {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.3s ease;
}
@media screen and (min-width: 897px) {
	.header__nav {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		position: static;
		height: auto;
	}
}
.header__nav {
	will-change: opacity;
}
.hamburger span:nth-child(1) {
	top: 0;
}
.hamburger span:nth-child(2) {
	top: 8px;
}
.hamburger span:nth-child(3) {
	bottom: 0;
}
.hamburger.is-open span:nth-child(1) {
	transform: rotate(45deg);
	top: 8px;
}
.hamburger.is-open span:nth-child(2) {
	opacity: 0;
	top: 8px;
}
.hamburger.is-open span:nth-child(3) {
	transform: rotate(-45deg);
	bottom: 8px;
}
@media screen and (max-width: 897px) {
	#header {
		height: 60px;
	}
	.header__logo {
		max-width: 100px;
	}
	[class^="header__list"] {
		gap: 30px;
	}
	.hamburger {
		display: block;
		z-index: 1001;
	}
	/* ナビを非表示に */
	.header__nav {
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 100vh;
		background: #fff;
		z-index: 999;
		display: flex;
		flex-direction: column;
		gap: 60px;
		padding: 90px 30px;
	}
	[class^="conversion__item"] {
		height: 100%;
	}
	/* メニュー表示時 */
	.header__nav.is-open {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}
	[class^="gnav__item"] {
		justify-content: center;
	}
	/* 縦並びに */
	.header__list--gnav,
	.header__list--conversion {
		flex-direction: column;
		align-items: center;
	}
}
/*
	KV
-----------------------------------------------------------------------------------------------*/
#kv {
	width: 100vw;
    min-width: 1200px;
    position: relative;
    z-index: 1;
	background: var(--green-bg);
	margin-top: 108px;
}
#kv::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 200px;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	background: url(../images/ph_kv_bg02.svg) top right 95% / cover repeat;
  }
[class^="kv__deco"] {
	position: absolute;
	z-index: 300;
 }
 .kv__deco--01{
	width: 213px;
	bottom: 6%;
	left: 42%;
	z-index: 300;
 }
 .kv__deco--01::before{
	content: "";
	position: absolute;
	background: #000;
	opacity: 0.08;
	border-radius: 50%;
	left: 50%;
	bottom: -15px;
	transform: translateX(-50%);
	z-index: -1;
	width: 250px;
	height: 40px;
 }
 .kv__deco--02{
	width: 100px;
	bottom: 8%;
	left: 6%;
 }
 .kv__deco--03{
	width: 62px;
	bottom: 23%;
	right: 2%;
 }
.kv__container{
    height: 100%;
    margin: 0 auto;
    max-width: var(--width);
    padding: 85px 70px 100px 70px;
	position: relative;
}
.kv__box {
    height: 100%;
    position: relative;
    display: flex;
    align-items: center;
	justify-content: center;
}
.kv__head {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
    position: relative;
    z-index: 400;
}
.kv__head--sub {
    font-size: 3.2rem;
    font-weight: var(--medium);
	color: var(--green);
	line-height: 150%;
}
.kv__ruby{
	font-size: 1.6rem;
	letter-spacing: 2.6rem;
	color: var(--ruby-gray);
	text-align: center;
}
.kv__logo {
    width: 482px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 30px;
}
.btn__comment{
	text-align: center;
	margin-bottom: 10px;
	display: inline-block;
    position: relative;
    top: 0;
    font-size: 2.4rem;
    font-weight: var(--medium);
    margin-bottom: 32px;
}
.btn__comment::before, 
.btn__comment::after {
    content: '';
    width: 1px;
    height: 43px;
    background: #000;
    position: absolute;
    bottom: -18px;
}
.btn__comment::before {
    left: -35px;
    transform: rotate(-45deg);
}
.btn__comment::after {
    right: -35px;
    transform: rotate(45deg);
}
.btn__comment--key{
	background:linear-gradient(transparent 70%, #F0CD69 70%);
}
.kv__btn{
	margin: 0 auto;
	text-align: center;
}
.device{
	position: relative;
}
.device__box{
	position: relative;
}
.pc__device{
	width: 587px;
}
.sp__device{
	width: 152px;
	position: absolute;
	z-index: 500;
	right: 0;
	bottom: -30px;
}
[class^="device__frame"] {
	width: 100%;
	display: block;
	position: relative;
	z-index: 200;
}
[class^="device__frame"]::before {
	content: "";
	position: absolute;
	background: #000;
	opacity: 0.08;
	border-radius: 50%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}
.device__frame--pc::before{
	width: 630px;
	height: 20px;
	bottom: -10px;
}
.device__frame--sp::before{
	width: 200px;
	height: 15px;
	bottom: -7px;
}
[class^="device__screen"] {
	position: absolute;
	top: 5px;
	left: 50%;
	transform: translateX(-50%);
	width: 80%;
	overflow: hidden;
	z-index: 100;
	background: #fff;
}
.device__screen--sp{
	top: 50%;
	transform: translate(-50%,-50%);
	width: 99%;
	height: 99%;
	border-radius: 20px;
}
/* slick対策 */
[class^="device__screen"],
[class^="device__screen"] * {
  box-sizing: border-box;
}
/* 画像 */
.device__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 897px) {
	#kv {
		min-width: auto;
		height: 100%;
		width: 100%;
		margin-top: 0;
	}
	.kv__box {
		flex-direction: column;
	}
	.kv__head {
		width: 100%;
		margin-bottom: 50px;
	}
	.kv__head--sub {
		font-size: 2.0rem;
		text-align: center;
	}
	.kv__logo {
		width: 100%;
		display: flex;
		align-items: center;
		margin-bottom: 20px;
	}
	.kv__ruby {
		font-size: 1.2rem;
		margin-left: 30px;
	}
	.kv__logo--ph{
		max-width: 300px;
		width: 100%;
	}
	.kv__btn{
		width: 100%;
	}
	.kv__container {
		padding: 90px 30px;
		max-width: var(--w960);
	}
	.btn__comment {
		font-size: 1.4rem;
		margin-bottom: 20px;
	}
	.btn__comment::before, 
	.btn__comment::after {
		content: '';
		height: 30px;
		bottom: -12px;
	}
	.btn__comment::before {
		left: -25px;
	}
	.btn__comment::after {
		right: -25px;
	}
	.btn__bass--register {
		max-width: 250px;
		width: 100%;
		min-height: 54px;
		height: 100%;
		margin: 0 auto;
		font-size: 1.6rem;
	}
	.btn__bass {
		width: 100%;
		font-size: 1.6rem;
		height: 100%;
		min-height: 54px;
		max-width: 250px;
	}
	.pc__device {
		width: 100%;
		max-width: 500px;
	}
	.sp__device {
		width: 25%;
	}
	.device__frame--sp::before {
		width: 100%;
		height: 10%;
		bottom: -7px;
	}
	.device__frame--pc::before {
		width: 100%;
		height: 10%;
		bottom: -10px;
	}
	.kv__deco--01 {
		width: 140px;
		bottom: 3%;
		left: 3%;
		z-index: 300;
	}
	.kv__deco--01::before {
		bottom: -10px;
		width: 180px;
		height: 30px;
	}
	.kv__deco--02 {
		display: none;
	}
	.kv__deco--03{
		width: 35px;
		bottom: 21%;
		right: 1%;
	}
}
/*
	alignment
-----------------------------------------------------------------------------------------------*/
#alignment{
	background: var(--deep--green);
}
.container__alignment{
	padding: 10px 10px;
}
.alignment__box{
	display: flex;
	align-items: center;
	position: relative;
}
.alignment__box::before{
	content: "";
	position: absolute;
}
.alignment__head{
	background: var(--pink);
	padding: 10px 5px 12px 20px;
	width: 100%;
	max-width: 148px;
	height: 55px;
	color: #fff;
	font-weight: var(--bold);
	display: flex;
    align-items: center;
	justify-content: center;
	border-radius: var(--border-radius-5);
	margin-right: 45px;
	position: relative;
	z-index: 1;
}
.alignment__head::before{
	content: "";
	content: "";
	position: absolute;
	background: url(../images/ph_alignment_img01.svg) center center / cover no-repeat;
	height: 55px;
	width: 30px;
	top: 50%;
	transform: translateY(-50%);
	right: -20px;
	z-index: -1;
}
.alignment__txt{
	font-size: 1.6rem;
	line-height: 125%;
}
.alignment__bank{
	color: #fff;
	margin-right: 20px;
}
.alignment__comment{
	width: 100%;
	height: 32px;
	max-width: 110px;
	background: #fff;
	color: var(--yellow);
	font-size: 1.6rem;
	font-weight: var(--bold);
	padding: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--border-radius-5);
	border: 1px solid var(--yellow);
	position: relative;
	z-index: 2;
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
}
.alignment__comment::before {
    content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	border-right: 6px solid var(--yellow);
	border-left: 0;
	position: absolute;
	left: -6px;
	top: 50%;
	transform: translateY(-50%);
}
.alignment__name{
	display: inline-flex;
}
.alignment__name:not(:last-child){
	margin-right: 40px;
	position: relative;
	font-size: 1.4rem;
	font-weight: var(--medium);
}
.alignment__name:not(:last-child)::after{
	content: "/";
	position: absolute;
	right: -25px;
	top: 50%;
	transform: translateY(-50%);
}
@media screen and (max-width: 897px) {
	.container__alignment {
		padding: 30px 30px;
	}
	.alignment__box {
		flex-direction: column;
		gap: 20px;
	}
	.alignment__head {
		padding: 10px;
		width: 100%;
		max-width: 200px;
		height: auto;
		margin-right: 0;
	}
	.alignment__head::before {
		content:none;
	}
	.alignment__txt {
		font-size: 2rem;
	}
	.alignment__bank {
		margin-right: 0;
	}
	.alignment__name:not(:last-child) {
		margin-right: 20px;
	}
	.alignment__name:not(:last-child)::after {
		right: -15px;
	}
	.alignment__comment{
		height: auto;
		background: #fff;
		font-size: 2rem;
		padding: 10px;
		max-width: 200px;
	}
	.alignment__comment::before {
		border-top: 0;
		border-bottom: 6px solid var(--yellow);
		border-right: 4px solid transparent;
		border-left: 4px solid transparent;
		position: absolute;
		left: 50%;
		top: -4px;
		transform: translate(-50%,-50%);
	}
}
/*
	about
-----------------------------------------------------------------------------------------------*/
.about__head{
	font-size: 4.0rem;
	font-weight: var(--black);
	margin-bottom: 45px;
}
.about__key{
	font-size: 5.5rem;
	color: var(--green);
	padding: 0 40px;
	position: relative;
}
.about__key::before, 
.about__key::after {
	content: "";
    position: absolute;
    font-family: var(--ffOs);
    font-weight: var(--medium);
    font-size: 7.0rem;
    color: var(--light--green-60);
}
.about__key::before {
    content: "“";
   	top: -5px;
    left: 10px;
}
.about__key::after {
    content: "”";
   	bottom: -40px;
    right: 10px;
}
.about__lead{
	font-size: 2.2rem;
	line-height: 175%;
	font-weight: var(--bold);
	text-align: center;
}
[class^="about__deco"] {
	position: absolute;
    z-index: 300;
	opacity: 0.3;
}
.about__deco--01{
	width: 93px;
    top: 20%;
    right: 5%;
}
.about__deco--02{
	width: 62px;
    bottom: 20%;
    left: 4%;
}
.about__deco--03{
	width: 62px;
    bottom: 10%;
    left: 11%;
}
@media screen and (max-width: 897px) {
	.about__key {
		font-size: 3.5rem;
		color: var(--green);
		padding: 0 30px;
		position: relative;
	}
	.about__head {
		font-size: 2.4rem;
		line-height: 175%;
		margin-bottom: 20px;
	}
	.about__key::before, 
	.about__key::after {
		font-size: 5.0rem;
	}
	.about__key::before {
		left: 5px;
	}
	.about__key::after {
		right: 5px;
		bottom: -30px;
	}
	.about__lead {
		font-size: 1.6rem;
	}
}
/*
	issue
-----------------------------------------------------------------------------------------------*/
.container__issue{
	display: flex;
	justify-content: center;
    max-width: 100%;
    padding: 0;
	gap: 10px;
}
.problem{
	background: #F4F4F4;
	width: 100%;
	display: flex;
    justify-content: flex-end;
	position: relative;
}
.problem::before,
.problem::after{
	content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 35px solid transparent;
    border-bottom: 35px solid transparent;
    border-right: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.problem::before{
	border-left: 45px solid #fff;
    right: -45px;
}
.problem::after{
    border-left: 45px solid #F4F4F4;
    right: -30px;
}
.solution{
	background: var(--green-bg);
	width: 100%;
	display: flex;
    justify-content: flex-start;
}
[class^="issue__container"] {
	padding: 65px 70px;
	max-width: 640px;
	height: 100%;
    position: relative;
    text-align: center;
}
[class^="issue__comment"] {
    font-weight: var(--bold);
    text-align: center;
    padding: 18px;
    width: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
	font-size: 3.5rem;
	position: absolute;
	top: -35px;
	left: 50%;
	transform: translateX(-50%);
	box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
}
[class^="issue__comment"]::after {
    content: "";
    bottom: -10px;
    content: '';
    height: 20px;
    left: 50%;
    transform: translate(-50%, 0) rotate(45deg);
    position: absolute;
    width: 20px;
    z-index: 1;
}
.issue__comment--problem{
	background: #91CDCD;
	color: #fff;
	border-radius: var(--border-radius-5);
}
.issue__comment--problem::after{
	background: #91CDCD;
	z-index: 2;
}
.issue__comment--solution{
	background: var(--green);
	color: #fff;
	border-radius: var(--border-radius-5);
}
.issue__comment--solution::after{
	background: var(--green);
	z-index: 2;
}
[class^="issue__lead"]{
	font-size: 1.6rem;
	text-align: center;
	font-weight: var(--regular);
	line-height: 225%;
	margin-bottom: 34px;
}
.issue__lead--key{
	background: var(--yellow);
	color: #fff;
	padding: 5px;
	font-size: 2.0rem;
	margin: 0 10px;
	font-weight: var(--bold);
	line-height: 100%;
	display: inline-flex;
}
.issue__box{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 30px;
}
.issue__figure{
	display: flex;
	align-items: flex-end;
	flex-direction: column;
	gap: 10px;
}
.issue__figure--inner{
	background: #fff;
	padding: 20px 15px 45px 15px;
	width: 100%;
	height: 100%;
	max-height: 460px;
	display: flex;
	justify-content: center;
	position: relative;
}
.problem__ph{
	width: 382px;
}
.solution__ph{
	width: 418px;
}
.issue__note{
	padding-left: 1.0em;
    text-align: left;
    text-indent: -1.0em;
	font-weight: var(--medium);
	color: var(--green);
	display: flex;
	justify-self: flex-end;
}
.issue__note--txt{
	font-size: 0.9rem;
	line-height: 125%;
	letter-spacing: 0;
}
.issue__note--txt::before {
    content: '※';
}
.issue__list{
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.issue__item{
	width: calc((100% - 75px) / 3);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
}
.issue__item--ph{
	position: relative;
    width: 130px;
	height: 130px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    z-index: 1;
    box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.1);
}
.issue__ph--problem01{
	width: 66px;
}
.issue__ph--problem02{
	width: 64px;
}
.issue__ph--problem03{
	width: 74px;
}
.issue__ph--solution01{
	width: 84px;
}
.issue__ph--solution02{
	width: 65px;
}
.issue__ph--solution03{
	width: 60px;
}
[class^="issue__txt"]{
	height: 100%;
	display: flex;
	font-size: 1.2rem;
	letter-spacing: 0.1rem;
	line-height: 175%;
	text-align: center;
	font-weight: var(--bold);
}
.issue__txt--problem{
	color: var(--Blue);
}
.issue__txt--solution{
	color: var(--green);
}
[class^="issue__deco"]{
	position: absolute;
	left: 0;
}
.issue__deco--problem{
	width: 164px;
	bottom: -50px;
	left: -45px;
}
.issue__deco--solution{
	width: 124px;
	bottom: -35px;
	left: -30px;
}
@media screen and (max-width: 897px) {
	.container__issue {
		flex-direction: column;
		gap: 10px;
	}
	.problem,
	.solution {
		justify-content: center;
		padding: 50px 30px;
	}
	.issue__container--problem
	.issue__container--solution {
		padding: 100px 70px 65px 70px;
	}
	[class^="issue__container"] {
		max-width: var(--w500);
		width: 100%;
		padding: 0;
	}
	[class^="issue__comment"] {
		padding: 12px;
		width: 100%;
		max-width: 200px;
		font-size: 2.4rem;
		top: -75px;
	}
	[class^="issue__lead"] {
		margin-bottom: 25px;
	}
	.issue__lead--solution{
		line-height: 200%;
	}
	.issue__lead--key {
		margin: 0 10px;
	}
	.issue__deco--problem {
		width: 30%;
		min-width: 110px;
		bottom: -30px;
		left: -25px;
	}
	.issue__deco--solution {
		width: 20%;
		min-width: 110px;
		bottom: -35px;
		left: -30px;
	}
	.issue__item--ph {
		width: 90px;
		height: 90px;
	}
	.issue__ph--problem01{
		width: 50px;
	}
	.issue__ph--problem02{
		width: 49px;
	}
	.issue__ph--problem03{
		width: 50px;
	}
	.issue__ph--solution01{
		width: 69px;
	}
	.issue__ph--solution02{
		width: 50px;
	}
	.issue__ph--solution03{
		width: 45px;
	}
	.issue__figure {
		gap: 5px;
	}
	[class^="issue__txt"] {
		line-height: 150%;
	}
}
/*
	copy
-----------------------------------------------------------------------------------------------*/
.copy__head{
	display: inline-flex;
	flex-direction: column;
	font-size: 3.0rem;
	font-weight: var(--black);
}
.copy__head--top{
	padding-bottom: 18px;
	margin-bottom: 18px;
	border-bottom: dotted 2px var(--green);
	position: relative;
	display: inline-flex;
	justify-content: center;
}
.copy__txt{
	position: relative;
}
.copy__txt::before{
	content: "";
	width: 23px;
	height: 23px;
	background: url(../images/ph_copy_img01.png) no-repeat center / cover;
	position: absolute;
	right: -15px;
	top:-15px;
}
@media screen and (max-width: 897px) {
	.copy__head{
		font-size: 2.1rem;
	}
	.copy__head--top,
	.copy__head--bottom{
		line-height: 150%;
	}
}
/*
	movie
-----------------------------------------------------------------------------------------------*/
#movie{
	background: var(--green);
}
.movie__ph {
    width: 100%;
	height: 100%;
    max-width: 640px;
    display: flex;
    position: relative;
    z-index: 1;
}
.movie__box{
	display: flex;
	justify-content: space-between;
	color: #fff;
	margin-bottom: 40px;
}
.movie__logo{
	width: 250px;
	margin-bottom: 40px;
	position: relative;
}
.movie__logo::before{
	content: "つぎたす";
	font-size: 1.2rem;
	position: absolute;
	top: -30px;
	left: 50%;
	transform: translateX(-50%);
	letter-spacing: 2.6rem;
	width: 100%;
}
.movie__lead{
	font-size: 1.8rem;
	font-weight: var(--bold);
	line-height: 200%;
	margin-bottom: 30px;
}
.modal_open::before {
    content: "";
    width: 72px;
    height: 72px;
    background: url(../images/icon_movie_01.svg) no-repeat center center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin-left: 3px;
    z-index: 2;
}
.movie__noto--txt {
    position: relative;
    padding-left: 30px;
    text-indent: -30px;
	font-size: 1.6rem;
    font-weight: var(--regular);
	text-decoration: underline;
	color: #fff;
}
.movie__noto--txt::after {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 20px;
    height: 20px;
    background: url(../images/icon_movie_02.svg) no-repeat center center;
    z-index: 1;
}
.movie__btn{
	display: flex;
	justify-content: center;
}
@media screen and (max-width: 897px) {
	.movie__box {
		flex-direction: column;
		align-items: center;
		gap: 40px;
	}
	.movie__logo{
		width: 100%;
		max-width: 250px;
		margin: 0 auto 30px auto;
	}
	.movie__lead {
		font-size: 1.6rem;
		line-height: 175%;
		margin-bottom: 20px;
	}
}
/*
	features
-----------------------------------------------------------------------------------------------*/
.section__box--features{
	margin-bottom: 245px;
}
#features{
	background: var(--green-bg);
}
.features__lineup{
	display: flex;
	justify-content: center;
	gap: 40px;
	margin-bottom: 120px;
}
.lineup__item{
	background: #fff;
	position: relative;
	padding: 105px 30px 30px 30px;
	border-radius: var(--border-radius-10);
}
.lineup__ph--box{
	display: flex;
	justify-content: space-between;
	flex-direction: column;
	align-items: center;
	position: absolute;
	top: -200px;
	left: 50%;
	transform: translateX(-50%);
	gap: 30px;
}
.lineup__item{
	width: calc((100% - 80px) / 3);
	position: relative;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 5px 0px 0px;
}
.lineup__item::after{
	content: "";
    bottom: -15px;
    content: '';
    height: 35px;
    left: 50%;
    transform: translate(-50%, 0) rotate(45deg);
    position: absolute;
    width: 35px;
    z-index: 1;
	background: #fff;
}
[class^="lineup__item--num"]{
	font-size: 8.0rem;
	font-family: var(--ffOs);
	font-weight: var(--bold);
}
.lineup__item--num01,
.features__num01{
	color: var(--light--green);
}
.lineup__item--num02,
.features__num02{
	color: var(--yellow);
}
.lineup__item--num03,
.features__num03{
	color: var(--red);
}
.lineup__ph{
	width: 128px;
}
[class^="lineup__name"]{
	font-size: 1.6rem;
	width: 220px;
	font-weight: var(--bold);
	border-radius: 50px;
	padding: 7px 10px;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	color: #fff;
}
[class^="lineup__name--01"]{
	background: var(--light--green);
}
[class^="lineup__name--02"]{
	background: var(--yellow);
}
[class^="lineup__name--03"]{
	background: var(--red);
}
.lineup__txt--box{
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 30px;
}
.lineup__head{
	font-size: 2.2rem;
	font-weight: var(--bold);
	line-height: 125%;
}
.lineup__lead{
	font-size: 1.6rem;
	font-weight: var(--regular);
	color: var(--txt-gray);
	line-height: 175%;
}
@media screen and (max-width: 897px) {
	.section__box--features {
		margin-bottom: 180px;
	}
	.features__lineup {
		flex-direction: column;
		gap: 220px;
		margin-bottom: 60px;
	}
	.lineup__item {
		width: 100%;
	}
	[class^="lineup__item--num"] {
		font-size: 6.0rem;
	}
	.lineup__ph--box {
		top: -160px;
		gap: 20px;
	}
	.lineup__ph {
		width: 120px;
	}
	.lineup__txt--box {
		gap: 20px;
	}
	.lineup__head {
		font-size: 2.0rem;
	}
}
.features__list{
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 80px;
}
[class^="features__headarea"]{
	display: flex;
	align-items: center;
	gap: 20px;
	padding-bottom: 40px;
	margin-bottom: 40px;
}
.features__headarea01{
	border-bottom: dotted 2px var(--green-60);
}
.features__headarea02{
	border-bottom: dotted 2px var(--yellow-60);
}
.features__headarea03{
	border-bottom: dotted 2px var(--red-60);
}
[class^="features__num"]{
	font-size: 10rem;
	font-family: var(--ffOs);
	font-weight: var(--bold);
}
.features__txt--box{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 15px;
}
.features__head{
	font-size: 3.6rem;
	font-weight: var(--bold);
}
.lineup__name--01--features,
.lineup__name--02--features,
.lineup__name--03--features{
	margin: 0;
}
.scene__list{
	display: flex;
	justify-content: center;
	gap: 80px;
}
.scene__item{
	width: calc((100% - 540px) / 2);
	display: flex;
	flex-direction: column;
	gap: 42px;
}
[class^="scene__head"]{
	text-align: left;
	font-size: 1.8rem;
	line-height: 150%;
	font-weight: var(--bold);
	position: relative;
	padding-left: 28px;
	margin-bottom: 22px;
}
[class^="scene__head"]::after{
    position: absolute;
    content: "";
    display: block;
    width: 21px;
    height: 19px;
    top: 15px;
    left: 0;
    transform: translateY(-50%);
}
.scene__head01::after{
    background: url(../images/ico_check_01.svg) no-repeat;
}
.scene__head02::after{
    background: url(../images/ico_check_02.svg) no-repeat;
}
.scene__head03::after{
    background: url(../images/ico_check_03.svg) no-repeat;
}
.scene__lead{
	font-size: 1.6rem;
	line-height: 175%;
}
@media screen and (max-width: 897px) {
	.features__list {
		gap: 50px;
	}
	[class^="features__headarea"] {
		flex-direction: column;
		gap: 30px;
		padding-bottom: 30px;
		margin-bottom: 30px;
	}
	.features__txt--box {
		align-items: center;
		gap: 20px;
	}
	.features__head {
		font-size: 2.4rem;
	}
	[class^="features__num"] {
		font-size: 8.0rem;
	}
	.scene__list {
		gap: 20px;
	}
	.scene__item {
		width: calc((100% - 20px) / 2);
		gap: 50px;
	}
	[class^="scene__head"] {
		font-size: 2.0rem;
		padding-left: 0;
	}
	[class^="scene__head"]::after {
		top: -20px;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	.scene__lead {
		font-size: 1.4rem;
		line-height: 150%;
	}
}
/*
	question
-----------------------------------------------------------------------------------------------*/
#question {
    position: relative;
}
.question__list{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.question__item{
	box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.2);
	border-radius: var(--border-radius-10);
}
.question__area{
	display: flex;
	align-items: center;
	gap: 30px;
	background: #fff;
	position: relative;
	width: 100%;
	border-radius: var(--border-radius-10);
	transition: 0.3s;
	padding: 15px 10px;
}
.question__anser{
	display: flex;
	align-items: center;
	padding: 15px 10px;
	background: var(--light--green-10);
}
.question__area::before,
.question__area::after{
	content: '';
	display: inline-block;
	position: absolute;
	width: 1px;
	height: 18px;
	top: 50%;
	right: 45px;
	transform: translateY(-50%);
	background: #000;
	transition: 0.3s;
}
.question__area::before{
	transform: translateY(-50%) rotate(90deg);
}
[class^="qt__mark"]{
	font-size: 3.5rem;
	font-family: var(--ffOs);
	height: 100%;
	width: 100%;
	max-width: 90px;
	min-height: 70px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.qt__mark--question {
	border-right: 2px solid var(--light--green);
	color: var(--light--green);
}
.qt__tit{
	font-size: 2.0rem;
	font-weight: var(--bold);
}
.qt__mark--anser {
	color: var(--light--green);
}
/*open後の処理ーーーーーーーー*/
.open{
	background: var(--green);
	border-radius: 10px 10px 0 0;
	color: #fff;
}
.open:after {
	top: 50%;
	transform: translateY(-50%) rotate(90deg);
	background: #fff;
}
.open::before {
	background: #fff;
}
.open .qt__mark--question{
	color: #fff;
	border-right: 2px solid #fff;
}
/*ーーーーーーーーーーーー*/
.qt__anser--txt{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	border-left: 2px solid var(--light--green);
	padding-left: 40px;
	min-height: 70px;
	gap: 5px;
}
.qt__txt{
	font-size: 1.6rem;
	line-height: 1.8;
	position: relative;
	color: #505050;
	font-weight: var(--medium);
}
.qt__txt-link{
	text-decoration:underline;
	transition: 0.3s;
	color: var(--green);
}
.qt__txt-link:hover{
	opacity: 0.5;
}
.qt__txt--noto{
	font-size: 1.3rem;
}
@media screen and (max-width:897px){
	.question__list {
		gap: 30px;
	}
	.question__area {
		flex-direction: column;
		padding: 25px 30px 60px 30px;
	}
	[class^="qt__mark"] {
		font-size: 3.0rem;
		height: auto;
		width: 100%;
		max-width: 100%;
		min-height: auto;
		border-right: none;
		border-bottom: 2px solid var(--light--green);
		padding-bottom: 20px;
	}
	.open .qt__mark--question {
		color: #fff;
		border-right: none;
		border-bottom: 2px solid #fff;
	}
	.qt__tit {
		font-size: 1.8rem;
		line-height: 150%;
		text-align: left;
	}
	.qt__tit::before {
		width: 35px;
		height: 35px;
		font-size: 2rem;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.question__area::before,
	.question__area::after{
		top: auto;
		bottom: 15px;
		right: auto;
		left: 50%;
	}
	.question__area::before {
		transform: translate(-50%,-50%) rotate(90deg);
	}
	.question__anser {
		padding: 30px;
		flex-direction: column;
		gap: 30px;
	}
	.qt__anser--txt {
		flex-direction: column;
		border-left: none;
		padding-left: 0;
		min-height: auto;
		gap: 10px;
	}
	.qt__txt {
		font-size: 1.6rem;
		line-height: 150%;
	}
	.qt__txt::before {
		width: 35px;
		height: 35px;
		font-size: 2rem;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.qt__txt--noto {
		font-size: 1.2rem;
		text-align: left;
	}
}
/*
	flow
-----------------------------------------------------------------------------------------------*/
#flow{
	background:#f5f5dc;
}
.section__box--flow {
    gap: 10px;
}
.section__head--flow{
	margin-bottom: 10px;
}
.section__lead--flow{
	font-size: 3.0rem;
	line-height: 150%;
	font-weight: var(--bold);
}
.flow__list{
	display: flex;
	justify-content: center;
	gap: 80px;
	margin-bottom: 65px;
}
.flow__item{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: calc((1140px - 240px) / 4);
	gap: 26px;
}
.flow__unm{
	height: 50px;
	width: 50px;
	padding: 10px;
	background: var(--green);
	border-radius: var(--border-radius-5);
	position: relative;
}
.flow__unm--txt{
	font-size: 2.7rem;
	font-family: var(--ffOs);
	font-weight: var(--bold);
	color: #fff;
}
.flow__unm::after {
    content: "";
    bottom: -5px;
    content: '';
    height: 15px;
    left: 50%;
    transform: translate(-50%, 0) rotate(45deg);
    position: absolute;
    width: 15px;
    z-index: 1;
    background: var(--green);
}
.flow__head{
	background: #fff;
	width: 100%;
	padding: 10px;
	font-size: 1.8rem;
	color: var(--green);
	border: 1px solid var(--green);
	font-weight: var(--bold);
	border-radius: var(--border-radius-5);
	box-shadow: rgba(0, 0, 0, 0.1) 0px 5px 0px 0px;
	margin-bottom: 10px;
	position: relative;
}
.flow__item:not(:last-child) .flow__head::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -70px;
    width: 60px;
    height: 1px;
    border-bottom: dotted 2px var(--green);
}
.flow__box{
	width: 100%;
	height: 100%;
	position: relative;
}
.flow__box::before {
	content: "";
    background: url(../images/ico_zoom_01.svg) no-repeat center center / 17px #1E467D;
    bottom: 0;
    content: '';
    height: 30px;
    position: absolute;
    right: 0;
    width: 30px;
	z-index: 300;
}
[class^="flow__device"] {
    width: 100%;
    display: block;
    position: relative;
    z-index: 200;
}
.flow__frame{
	position: absolute;
	width: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 200;
}
.flow__screen {
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.flow__btn{
	margin: 0 auto;
    text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}
/*
	flow modal
-----------------------------------------------------------------------------------------------*/
#flow .js-modal-open{
	margin: 0 auto;
    text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	border-radius: 30px;
}
#flow [class^="js-modal-open"]::before {
 	content: none;
}
#flow .js-modal-open .modal__picture{
	transition: .3s;
}
#flow .js-modal-open:hover .modal__picture {
	transform: scale(1.05);
    opacity: 0.7;
}
@media screen and (max-width:897px){
	.flow__list {
		flex-direction: column;
	}
	.flow__item {
		width: 100%;
		gap: 26px;
	}
	.flow__box {
		max-width: 200px;
	}
	.flow__screen {
		top: auto;
		left: auto;
		transform: none;
	}
	.flow__head {
		font-size: 2.0rem;
	}
	.flow__item:not(:last-child) .flow__head::after {
		content: none;
	}
		/*
		flow modal
	-----------------------------------------------------------------------------------------------*/
	#flow .js-modal-open .modal__picture {
		width: 100%;
	}
}
/*
	provide
-----------------------------------------------------------------------------------------------*/
#provide{
	background-color: #ffffff;
    background-image: linear-gradient(90deg, #f5f5f5 1px, transparent 1px), linear-gradient(#f5f5f5 1px, transparent 1px);
    background-position: 10px 10px;
    background-size: 75px 75px;
	padding: 100px 0 200px 0;
	position: relative;
}
#provide::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 150px;
	left: 50%;
	transform: translateX(-50%);
	bottom: 0;
	background: url(../images/ph_kv_bg02.svg) top right 100% / cover repeat;
  }
.container__provide{
	padding: 100px 70px 30px 70px;
}
.provide__box{
	background: var(--Blue);
	padding: 60px;
	border-radius: var(--border-radius-10);
}
.provide__list{
	display: flex;
	justify-content: center;
}
.provide__item--ph {
    position: relative;
    width: 120px;
    height: 120px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    z-index: 1;
	margin-bottom: 10px;
}
.provide__item{
	display: flex;
    justify-content: center;
	flex-direction: column;
	align-items: center;
	width: calc((100% - 0px) / 3);
	gap: 20px;
}
.provide__item:not(:last-child) {
	border-right: 1px solid #fff;
}
.provide__ph--problem01{
	width: 64px;
}
.provide__ph--problem02{
	width: 62px;
}
.provide__ph--problem03{
	width: 88px;
}
[class^="provide__head"]{
	color: #fff;
	font-size: 2.2rem;
	font-weight: var(--bold);
	line-height: 150%;
	display: flex;
	align-items: center;
}
.provide__head--sub{
	font-size: 1.6rem;
}
@media screen and (max-width: 897px) {
	#provide {
		padding: 50px 0 160px 0;
	}
	#provide::before {
		height: 80px;
	  }
	.section__box--provide{
		margin-bottom: 40px;
	}
	.container__provide {
		padding: 0 30px;
	}
	.provide__box {
		padding: 28px;
	}
	.provide__list {
		flex-direction: column;
		gap: 30px;
	}
	.provide__item {
		width: 100%;
		gap: 10px;
		padding-bottom: 30px;
	}
	.provide__head--sub {
		font-size: 1.6rem;
	}
	.provide__item:not(:last-child){
    	border-right: none;
		border-bottom: 1px solid #fff;
	}
	.provide__item--ph {
		width: 100px;
		height: 100px;
		margin-bottom: 5px;
	}
	.provide__ph--problem01 {
		width: 54px;
	}
	.provide__ph--problem02 {
		width: 52px;
	}
	.provide__ph--problem03 {
		width: 78px;
	}
	.provide__head {
		font-size: 2.0rem;
	}
}
/*
	footer
-----------------------------------------------------------------------------------------------*/
#footer__wrapper{
	background: var(--light--green);
}
.container__footer{
	padding: 10px 70px 30px 70px;
}
.footer__box{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 60px;
}
.footer__logo{
	width: 250px;
}
[class^="footer__btn"] {
	display: flex;
	justify-content: center;
	flex-direction: column;
	gap: 30px;
}
.btn__conversion{
	gap: 25px;
	display: flex;
	justify-content: center;
}
.footer__login::before{
	font-size: 1.6rem;
	top: -30px;
}
.btn__bank{
	display: flex;
	justify-content: center;
}
.footer__link{
	font-size: 1.2rem;
	color: #fff;
}
.footer__list{
	display: flex;
	justify-content: center;
	width: 100%;
}
.footer__item{
	width: 100%;
	text-align: center;
}
.footer__item:not(:last-child) {
	border-right: 1px solid #fff;
}
.footer__deco{
	position: absolute;
	top: -150px;
	right: 150px;
	width: 280px;
}
[class^="footer__deco"] {
	position: absolute;
	z-index: 300;
 }
 .footer__deco--01{
	width: 100px;
	top: -90px;
	left: -10px;
 }
 .footer__deco--02{
	width: 62px;
	top: -150px;
	right: -10px;
 }
/* コピーライト
============================== */
#ntt{
	padding: 25px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.ntt__logo{
	width: 345px;
  	margin: 0;
  	flex: 0 0 auto;
}
.ntt__copyright{
  	margin: 0;
  	font-size: 1.2rem;
  	line-height: 1.4;
  	letter-spacing: 0.1rem;
  	text-align: right;
}

@media screen and (max-width: 897px) {
	.container__footer {
		padding: 130px 30px 30px 30px;
	}
	[class^="footer__btn"] {
		width: 100%;
	}
	.btn__conversion {
		gap: 20px;
		flex-direction: column;
	}
	.btn__bass--bank {
		font-size: 1.5rem;
		width: 190px;
	}
	.footer__list {
		flex-wrap: wrap;
		gap: 5px 10px;
	}
	.footer__item {
		width: auto;
		text-align: center;
	}
	.footer__item:not(:last-child) {
		padding-right: 5px;
		border-right: 1px solid #fff;
	}
	.footer__link {
		font-size: 1.2rem;
	}
	.footer__deco {
		top: -60px;
		right: auto;
		left: 50%;
		transform: translateX(-50%);
		width: 250px;
	}
	.footer__deco--01 {
		width: 80px;
		top: -90px;
		left: 5px;
	}
	.footer__deco--02 {
		width: 52px;
		top: -140px;
		right: -10px;
	}
	#ntt {
		padding: 20px;
	}
	.ntt__logo {
		width: 100%;
		max-width: 250px;
	}
	.ntt__copyright{
    	text-align: center;
  	}
	.footer__deco--01{
		width: 80px;
		top: -80px;
		left: 5px;
	 }
	 .footer__deco--02{
		width: 52px;
		top: -120px;
		right: 5px;
	 }
}

/* btn お問い合わせ
============================== */
.btn__inquiry-security.show{
	opacity: 1;
}
.btn__inquiry-security{
	display: inline-block;
	padding: 20px 13px;
	width: auto;
	height: auto;
	color: #fff;
	font-size: 2rem;
	font-weight: var(--bold);
	writing-mode: vertical-lr;
	font-feature-settings: normal;
	background: var(--red);
	border-radius: 15px 0 0 15px;
	border-right: none;
	position: fixed;
	transform: translateY(-50%);
	top: 50%;
	right: 0;
	z-index: 99;
	transition: 0.3s;
	opacity: 0;
	letter-spacing: 0.1rem;
	box-shadow: -3px 3px 0px 0px rgba(0, 0, 0, 0.1);
}
.btn__inquiry-security:hover{
	text-decoration: none;
	opacity: 0.7;
}
@media screen and (max-width:897px){
	.btn__inquiry-security{
		padding: 20px 8px;
		font-size: 1.2rem;
	}

}


/* page top
============================== */
.page__top--btn.show{
	opacity: 1;
}
.page__top--btn{
	position: fixed;
    bottom: 141px;
    right: 20px;
    z-index: 400;
	width: 50px;
}
.page__top--btn:hover{
	text-decoration: none;
	opacity: 0.7;
}