/*==============================================================
	RESET
==============================================================*/
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%
  }
  body {
	margin: 0
  }
  main {
	display: block
  }
  h1 {
	font-size: 2em;
	margin: 0.67em 0
  }
  hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible
  }
  pre {
	font-family: monospace, monospace;
	font-size: 1em
  }
  a {
	background-color: transparent
  }
  abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted
  }
  b,
  strong {
	font-weight: bolder
  }
  code,
  kbd,
  samp {
	font-family: monospace, monospace;
	font-size: 1em
  }
  small {
	font-size: 80%
  }
  sub,
  sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
  }
  sub {
	bottom: 0
  }
  sup {
	top: -0.25em
  }
  img {
	border-style: none
  }
  button,
  input,
  optgroup,
  select,
  textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0
  }
  button,
  input {
	overflow: visible
  }
  button,
  select {
	text-transform: none
  }
  button,
  [type="button"],
  [type="reset"],
  [type="submit"] {
	-webkit-appearance: button
  }
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0
  }
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
	outline: 2px dotted ButtonText
  }
  fieldset {
	padding: 0.35em 0.75em 0.625em
  }
  legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal
  }
  progress {
	vertical-align: baseline
  }
  textarea {
	overflow: auto
  }
  [type="checkbox"],
  [type="radio"] {
	box-sizing: border-box;
	padding: 0
  }
  [type="number"]::-webkit-inner-spin-button,
  [type="number"]::-webkit-outer-spin-button {
	height: auto
  }
  [type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px
  }
  [type="search"]::-webkit-search-decoration {
	-webkit-appearance: none
  }
  ::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit
  }
  details {
	display: block
  }
  summary {
	display: list-item
  }
  template {
	display: none
  }
  [hidden] {
	display: none
  }


/*==============================================================
	SET
==============================================================*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, address, big, code, del, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figure, figcaption, footer, header, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	font-style: normal;
}

a{
	text-decoration: none;
	color: #000;
}
ol, ul {
	list-style: none
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}


@font-face {
	font-family: Yu Gothic;
	src: local("Yu Gothic Medium");
	font-weight: 400
}
	@font-face {
	font-family: Yu Gothic;
	src: local("Yu Gothic Bold");
	font-weight: 700
}



:root {
	--font-set: 'Yu Gothic', "游ゴシック", 'YuGothic', "游ゴシック体", Hiragino Kaku Gothic ProN, 'Meiryo', sans-serif;
	--font-mainset: 'Roboto', 'UD Shin Go Regular', 'Yu Gothic', "游ゴシック", 'YuGothic', "游ゴシック体", Hiragino Kaku Gothic ProN, 'Meiryo', sans-serif;
	--font-subset: 'Yu Gothic', "游ゴシック", 'YuGothic', "游ゴシック体", Hiragino Kaku Gothic ProN, 'Meiryo' sans-serif;
}

body {
	font-family: 'Yu Gothic', "游ゴシック", 'YuGothic', "游ゴシック体", Hiragino Kaku Gothic ProN, 'Meiryo', sans-serif;
}
.font-sans {
	font-family: "Roboto", "Noto Sans JP", "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.font-serif {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

body{
	font-size: 16px;
	line-height: 1.5;
	color: #000;
}


@media (orientation: portrait) and (max-width: 767px) {
	body{
		font-size: 3.2vw;
	}
	small{font-size: 3vw;}
}
em{font-weight: bold;}
.ls-50{letter-spacing: -1px;}

h1{
	font-size: 24px;
}
h2{
	font-size: 18px;
}
small{
	font-size: 12px;
}

p{
	font-size: 18px;
}
@media (orientation: portrait) and (max-width: 767px) {
	/* h1{
		font-size: 24px;
	}
	h2{
		font-size: 18px;
	}
	small{
		font-size: 12px;
	} */
	
	p{
		font-size: 3.6vw;
	}
}

/*==============================================================
	Color
==============================================================*/
:root {
	/* --color-main: #; */
	--color-white: #fff;
}
/* .white{color: var(--color-white);}
.black{color: #000;}
.gray{color: #676767;}
.offwhite{color: #fffeea;}
.orange{color: #f39801;}
.pink{color: #ec6d88;}
.blue{color: #409ad6;}
.green{color: #00a73c;}
.red{color: #e71c24;} */

.bg-white{background-color: #fff;}
.bg-black{background-color: #000;}
.bg-gray{background-color: #676767;}
.bg-offwhite{background-color: #fffeea;}
.bg-orange{background-color: #f39801;}
.bg-pink{background-color: #ec6d88;}
.bg-blue{background-color: #409ad6;}
.bg-green{background-color: #00a73c;}
.bg-red{background-color: #e71c24;}
/*==============================================================
	Shortcut
==============================================================*/

.mb20{margin-bottom: 20px;}
.mb40{margin-bottom: 40px;}
.mb60{margin-bottom: 60px;}
.mb80{margin-bottom: 80px;}
.mb100{margin-bottom: 100px;}
@media (orientation: portrait) and (max-width: 767px) {
	.mb20{margin-bottom: 4vw;}
	.mb40{margin-bottom: 8vw;}
	.mb60{margin-bottom: 12vw;}
	.mb80{margin-bottom: 16vw;}
	.mb100{margin-bottom: 20vw;}
}

span.span-bl{display: inline;}
@media (orientation: portrait) and (max-width: 767px) {span.span-bl{display: block;}}
span.span-bl-no{display: block;}
@media (orientation: portrait) and (max-width: 767px) {span.span-bl-no{display: inline;}}

.hide{
	display: none;
}

@media screen and (min-width: 768px) {
	.sp_hide{display: block; }
	.sp_show{display: none; }
}
@media (orientation: portrait) and (max-width: 767px) {
	.sp_hide{display: none;}
	.sp_show{display: block; }
}

.flx{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: start;
}

.nobold {
	font-weight: normal;
}
.circletxt{
	position: relative;
	display: inline-block;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.circletxt span{
	/* box-sizing: border-box;
	position: absolute;
	display: inline-block;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	text-align:center; */
}

.brpc {display: inline; }
.brsp{display: none; }
@media (orientation: portrait) and (max-width: 767px) {
	.brpc {display: none; }
	.brsp {display: inline; }
}
.txtimg {
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}

/*==============================================================
	Layout
==============================================================*/


html {
	height: 100%;
}

body {
height: 100%;
margin: 0;
padding: 0;
position: relative;
min-width: 1024px;
background-color: #f8f9fb;
color: #161c61;
/* letter-spacing: 0.1em; */
}
main {
    width: 100%;
	height: auto;
}



@media (orientation: portrait) and (max-width: 767px) {
	body {
		min-width: auto;
	}
}

#wrap{
	background-image: url(../img/common/bg.png);
	background-repeat: repeat;
	background-size: 80%;
}

@media (orientation: portrait) and (max-width: 767px) {
	#wrap{
		background: #fff;
	}
}

main{
}

.sc_base{
	box-sizing: border-box;
	padding: 0 300px 0 0;
	margin: 0 0 60px 0;
}
.sc_base .content{
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 1300px;
	min-width: 724px;
	padding: 60px 30px;
	/* background-color: #00a73c; */
}


#lo{
	display: flex;
	justify-content: space-between;
	align-items: top;
	flex-direction: row-reverse;
}

@media (orientation: portrait) and (max-width: 767px) {
	.sc_base{
		padding: 0;
		margin: 0 0 6vw 0;
		overflow: hidden;
	}
	.sc_base .content{
		max-width: auto;
		min-width: auto;
		padding: 12vw 4vw;
	}
	#lo{
		display: block;
	}
}



/*==============================================================
	NAV
==============================================================*/
/* #gnav{
	width: 300px;
	z-index: 1000;
	position: absolute;
	top: 100px;
	right: 0;
}
#gnav.fixed{
	position: fixed;
	top: 0;
}
.navbase{
	margin: 0 20px;
	padding: 20px 0;
} */

#gnav{
	width: 300px;
	z-index: 1000;
	margin-left: -300px;
}
.navbase{
	position: sticky;
	top: 15px;
	margin: 0 20px;
	padding: 20px 0;
}


.navbase .navframewhite{
	background-image: url(../img/common/navframe-topopa.png),
	url(../img/common/navframe-centeropa.png);
	background-repeat: no-repeat;
	background-position: top 0  left 0,
	top 30px left 0;
	background-size: 100%,
	100% calc(100% - 51px);
	margin-bottom: 40px;
}
.navbase .navframewhite::after{
	content: "";
	display: block;
	height: 30px;
	background-color: ;
	background-image:url(../img/common/navframe-centeropa1.png),
	url(../img/common/navframe-bottomopa.png);
	background-repeat: no-repeat;
	background-position: bottom 30px left 0,
	bottom 0 left 0;
	background-size: 100%,
	100%;
	/* background-color: red; */
}

.navbase .navframeblack{
	/* box-sizing: border-box;
	background-image: url(../img/common/navframe-bl.png);
	background-repeat: no-repeat;
	background-size: 100%;
	height: 60px;
	padding: 15px 25px; */
}
.navbase .navframeblack a{
	display: block;
	box-sizing: border-box;
	background-image: url(../img/common/navframe-bl.png);
	background-repeat: no-repeat;
	background-size: 100%;
	height: 60px;
	padding: 15px 25px 15px 25px;
	letter-spacing: 3px;
	color: #f7dad9;
	font-weight: bold;
	transition: transform 0.2s linear;
}
.navbase .navframeblack a:hover{
	transform: translateY(-8px);
}

nav.menu{
	padding: 40px 40px 10px 40px;
}
nav.menu ul li{
	margin-bottom: 30px;
}
nav.menu ul li:last-child{
	margin-bottom: 30px;
}
nav.menu ul li a{
	font-weight: bold;
	letter-spacing: 3px;
	color: #161c61;
	position: relative;
	padding-bottom: 6px;
}
nav.menu ul li a::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0px;
	width: 100%;
	height: 3px;
	/* background-color: #f7dad9; */
	background-image: url(../img/common/underlineshort.png);
	background-position: top left;
	background-repeat: repeat-x;
	background-size: auto 100%;
}
nav.links{
	padding: 0 40px 0 40px;
}
nav.links ul{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: start;
	align-items: stretch;
}
nav.links ul li a{
	display: block;
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center;
	width: 26px;
	height: 45px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
nav.links ul li:nth-child(1) a{
	background-image: url(../img/common/navico-twi.png);
	width: 26px;
}
nav.links ul li:nth-child(2) a{
	background-image: url(../img/common/navico-note.png);
	width: 50px;
}
nav.links ul li:nth-child(3) a{
	background-image: url(../img/common/navico-logo.png);
	width: 62px;
}

@media (orientation: portrait) and (max-width: 767px) {
	#gnav{
		background-color: #fff;
		width: 100%;
		height: 100vh;
		height: 100dvh;
		z-index: 1000;
		position: fixed;
		top: 0;
		right: 0;
		left: 100vw;
		transition: left .3s ease, padding .3s ease;
		margin-left: 0;
	}

	#gnav.spnav_isopen{
		left: 0;
	}

	#gnav.fixed{
		position: fixed;
		top: 0;
	}
	.navbase{
		top: 0;
		margin: 0 4vw 0 16vw;
		padding: 4vw 0;
	}
	.navbase .navframewhite{
		background-image: url(../img/common/navframe-top.png),
		url(../img/common/navframe-center.png);
		background-position: top 0  left 0,
		top 6vw left 0;
		background-size: 100%,
		100% calc(100% - 12vw);
		margin-bottom: 12vw;
	}
	.navbase .navframewhite::after{
		background-image:url(../img/common/navframe-center.png),
		url(../img/common/navframe-bottom.png);
		height: 6vw;
		background-position: bottom 6vw left 0,
		bottom 0 left 0;
	}
	nav.menu{
		padding: 6vw 8vw 2vw 8vw;
		font-size: 5vw;
		letter-spacing: 0.6vw;
	}

	.spnavheader{
		padding: 4vw 0 0 0;
		width: 80%;
		/* background-color: red; */
		position: relative;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}
	.spnavheader span a{
		display: block;
		margin-left: 10vw;
		width: 16vw;
		height: 16vw;
		background-color: #fff;
		background-image: url(../img/common/navico-logo.png);
		background-repeat: no-repeat;
		background-position: center;
		background-size: 100%;
		text-indent:100%;
		white-space:nowrap;
		overflow:hidden;
	}
	.spnavheader .btn_spnavclose{
		display:block;
		width: 10vw;
		height: 10vw;
		background-color: rgba(0, 0, 0, 0);
		background-image: url(../img/common/spnav_close.svg);
		background-repeat: no-repeat;
		background-size: 100%;
		background-position: center;
		border: 0;
		cursor: pointer;
		box-sizing: border-box;
		text-indent:1000%;
		white-space:nowrap;
		overflow:hidden;
	}

	#header .btn_spnavopen{
		display:block;
		width: 9vw;
		height: 9vw;
		background-color: rgba(0, 0, 0, 0);
		background-image: url(../img/common/spnav_open.svg);
		background-repeat: no-repeat;
		background-size: 100%;
		background-position: center;
		border: 0;
		cursor: pointer;
		box-sizing: border-box;
		text-indent:1000%;
		white-space:nowrap;
		overflow:hidden;
		margin-right: 6vw;
	}

	#header .btn_spnavopen.spnav_active{
	}

}

/*==============================================================
	L1 Header Footer
==============================================================*/
#header {
	height: 100px;
	width: 100%;
	display: flex;
	/* justify-content: center; */
	align-items: center;
	justify-content: space-between;
}
#header a{
	/* display: block; */
	width: 170px;
	margin-left: 40px;
}
#header a img{
	width: 100%;
}

@media (orientation: portrait) and (max-width: 767px) {
	#header {
		height: 20vw;
	}
	#header a{
		width: 18vw;
		margin-left: 4vw;
	}
}


#footer {
	background-color: #fff;
	height: 60px;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
#footer small{
	display: inline-block;
	font-size: 13px;
}

@media (orientation: portrait) and (max-width: 767px) {
	#footer {
		/* height: 400vw; */
		height: auto;
		width: 100%;
		display: block;
		padding: 6vw 0;
	}

	#footer .navframeblack{
		text-align: right;
		box-sizing: border-box;
		background-image: url(../img/common/navframe-bl.png);
		background-repeat: no-repeat;
		background-position: center right 4vw;
		background-size: contain;
		height: 16vw;
		/* width: 100%; */
		padding: 4vw 6vw;
		margin-bottom: 6vw;
	}
	#footer .navframeblack a{
		display: block;
		color: #f7dad9;
		font-weight: bold;
		letter-spacing: 0.1em;
		font-size: 5.2vw;
		margin:0 13vw 0 0 ;
	}
	#footer .splinks{
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 6vw;
		height: 18vw;
		margin-bottom: 6vw;
	}
	#footer .splinks div{
		display: block;
	}

	#footer .splinks a{
		display: block;
		background-repeat: no-repeat;
		background-size: 100%;
		background-position: center;
		text-indent:100%;
		white-space:nowrap;
		overflow:hidden;
	}

	#footer .splinks div a{
		background-image: url(../img/common/navico-logo.png);
		height: 18vw;
		width: 18vw;
	}
	#footer .splinks ul{
		display: block;
		height: 10vw;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#footer .splinks ul li a{
		height: 10vw;
	}

	#footer .splinks ul li:nth-child(1) a{
		background-image: url(../img/common/navico-twi.png);
		margin-right: 4vw;
		width: 10vw;
	}
	#footer .splinks ul li:nth-child(2) a{
		background-image: url(../img/common/navico-note.png);
		width: 14vw;
	}
	#footer p{
		padding: 0 6vw;
		font-size: 3vw;
		margin-bottom: 2vw;
	}
	#footer p a{
		color: #161c61;
	}
}




/*==============================================================
	01 TOP
==============================================================*/
#kv.sc_base{
	height: calc(100vh - 100px);
	height: calc(100dvh - 100px);
	min-height: 768px;
	
}

#kv .content{
	padding: 0 30px;
}
#kv .kv_main{
	/* background-color: yellow; */
	background-image: url(../img/kv/kv12.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 100%;
	/* height: 60vh; */
	min-height: 520px;
	height: 540px;
	position: relative;
	margin-bottom: 50px;
	
}
#kv .kv_main div.copy_main{
	box-sizing: border-box;
	width:100%;
	height:100%;
	position:absolute;
	display:flex;
	justify-content: center;
	align-items: center;
	top:0;
	left:0;
	padding:1% 3%;
	white-space: nowrap;
}
#kv .kv_main div.copy_main div{
	font-weight: bold;
	display: inline-block;
	color: #161c61;
	/* line-height: 70px; */
	letter-spacing: 7px;
	margin-top: -100px;
	/* text-indent:-2em;
	margin-left: 2em; */
}

#kv .kv_main div.copy_main div p{
	font-size: 28px;
	/* overflow: hidden; */
}
#kv .kv_main div.copy_main div p:first-child{
	margin-bottom: 30px;
}
#kv .kv_main div.copy_main div p:nth-child(2){
	margin-left: 66px;
}



#kv .kv_main div.copy_main div p span{
	/* background-color: red; */
	/* padding: 0 28px; */
	padding: 0 36px 0 36px;
}
/* #kv .kv_main div.copy_main div p span::before{
	content:"";
	display: inline-block;
	height: 50px;
	width: 25px;
	background-image: url(../img/kv/kva1.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
	margin-bottom: -15px;
	margin-right: 14px;
}
#kv .kv_main div.copy_main div p span::after{
	content:"";
	display: inline-block;
	height: 50px;
	width: 25px;
	background-image: url(../img/kv/kva2.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
	margin-bottom: -15px;
	margin-right: 14px;
} */

#kv .kv_main div.copy_main div span.kvtalk{
	display: block;
	width: 200px;
	height: 50px;
	margin-top: -50px;
	margin-left: 66px;
	background: url(../img/kv/kva12.svg) no-repeat center 100%;
	/* background-color: red; */
}

@media (orientation: portrait) and (max-width: 767px) {
	#kv.sc_base{
		/* height: 120vh;
		height: 120dvh; */
		min-height: auto;
		height: auto;
	}
	#kv .content{
		padding: 0 4vw;
	}
	#kv .kv_main{
		background-image: url(../img/kv/kv1.png);
		background-size: 80%;
		background-position: bottom;
		width: 100%;
		min-height: auto;
		height: 120vw;
		position: relative;
		margin-bottom: 0;
	}
	#kv .kv_main div.copy_main{
	}
	#kv .kv_main div.copy_main div{
		/* background-color: red; */
		letter-spacing: 1vw;
		margin-top: -46vw;
		/* text-indent:-2em;
		margin-left: 2em; */
		line-height: 14vw;
	}
	#kv .kv_main div.copy_main div p{
		font-size: 7.2vw;
		margin-left: 10vw;
	}
	#kv .kv_main div.copy_main div p:first-child{
		margin-bottom: 6vw;
	}
	#kv .kv_main div.copy_main div p:nth-child(2){
		margin-left: 10vw;
	}
	#kv .kv_main div.copy_main div p span{
		padding: 0 7.2vw 0 0;
	}
	#kv .kv_main div.copy_main div span.kvtalk{
		width: 42vw;
		height: 12vw;
		margin-top: -28vw;
		margin-left: 5vw;
		/* background-color: red; */
	}
}

#kv .kv_sub{
	text-align: center;
	position: relative;
}
#kv .kv_sub h3{
	/* background-color: red; */
	font-size: 28px;
	margin-bottom: 50px;
	font-weight: normal;
	margin-right: 60px;
}


#kv .kv_sub .kv_sub_b{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	/* background-color: #409ad6; */
} 
#kv .kv_sub p{
	display: block;
	font-size: 18px;
	line-height: 2;
	margin-left: 60px;
	margin-right: 30px;
	white-space: nowrap;
	/* background-color: #00a73c; */
}

#kv .kv_sub  .iconscroll{
	display: block;
	height: 80px;
	width: 80px;
	background: url(../img/common/kvshitac.svg) no-repeat center;
	/* position: absolute;
	bottom: 0;
	right: 0; */
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	position: relative;
	/* background-color: red; */
}
#kv .kv_sub  .iconscroll .iconscroll_inner{
	content: "";
	display: block;
	height: 56px;
	width: 56px;
	position: absolute;
	top: 12px;
	left: 12px;
	overflow: hidden;

	/* top: 10%;
	left: 10%;
	height: 80%;
	width: 80%; */
}
#kv .kv_sub  .iconscroll .iconscroll_inner::after{
	content: "";
	display: block;
	height: 56px;
	width: 56px;
	background: url(../img/common/kvshitay.svg) no-repeat center;
	background-size: 45%;
	position: absolute;
	bottom: 0;
	right: 0;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	animation: yurayura 1.2s infinite alternate ease-in-out;
	display: block;

	/* top: 10%;
	left: 10%;
	height: 80%;
	width: 80%; */
}



@keyframes yurayura {
	from {
		transform: translateY(-65%);
	}
	to {
		transform: translateY(0%);
	}
}

/* @media screen and (max-width: 1000px){
	#kv .kv_sub  .iconscroll{
		background-color: red;
		display: none;
	}
} */

@media (orientation: portrait) and (max-width: 767px) {
	#kv .kv_sub{
		background-image: url(../img/kv/kvspframe.svg);
		background-repeat: no-repeat;
		background-size: 100%;
		padding: 10vw 0 10vw 12vw;
		text-align: left;
		min-height: 100vw;
		letter-spacing: 0.2em;
	}
	#kv .kv_sub h3{
		font-size: 5.4vw;
		margin-bottom: 10vw;
		font-weight: normal;
		margin-right: 0;
	}
	#kv .kv_sub .kv_sub_b{
		display: block;
	} 
	#kv .kv_sub p{
		font-size: 4vw;
		line-height: 2.0;
		margin-left: 0;
		margin-right: 0;
	}



	#kv .kv_sub  .iconscroll{
		display: none;
	}
	#kv .kv_sub  .iconscroll::after{
		display: none;
	}
	
}

/*==============================================================
	P1
==============================================================*/
.sc_base.content_base{
	/* padding-top: 30px;
	padding-bottom: 30px; */
}

@media (orientation: portrait) and (max-width: 767px) {
	.sc_base.content_base{
		/* padding-top: 0;
		padding-bottom: 0; */
	}
}

/* S1 */
section#intro{
}
section#intro .fukiwhite{
	width: 500px;
	height: 100px;
	background: url(../img/top/s1-fukidashi.svg) no-repeat center left;
	display: flex;
	justify-content: center;
	align-items: center;
	background-size: contain;
	margin: 0 auto;
	margin-bottom: 60px;
	padding-right: 32vw;
}
section#intro .fukiwhite p{
	font-size: 24px;
}
section#intro .p1s1base{
	/* background-color: red;
	padding: 0 300px;
	position: relative; */
	box-sizing: border-box;
	padding: 0 0 0 200px;
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	position: relative;
}
section#intro .p1s1base p{
	font-size: 20px;
	margin-bottom: 60px;
	z-index: 2;
	position: relative;
}
section#intro .p1s1base span.imgthink{
	display: block;
	position: absolute;
	z-index: 1;
	background-repeat: no-repeat;
	background-position: center center;
}
section#intro .p1s1base span.imgthink.imgthink_w{
	background-size: 100%;
	/* top:0; left: 100px; */
	top:0; left: 50px;
	width: 100px;
	height: 330px;
}
section#intro .p1s1base span.imgthink.imgthink_m{
	background-size: 100%;
	/* bottom:0; right: 100px; */
	bottom:0; right: 50px;
	width: 115px;
	height: 330px;
}

section#intro.anim .p1s1base span.imgthink.imgthink_w{
	background-image: url(../img/top/s1-anim11.png);
}
section#intro.anim .p1s1base span.imgthink.imgthink_m{
	background-image: url(../img/top/s1-anim21.png);
}
section#intro.anim.is-animated .p1s1base span.imgthink.imgthink_w{
	background-image: url(../img/top/apng-w.png);
}
section#intro.anim.is-animated .p1s1base span.imgthink.imgthink_m{
	background-image: url(../img/top/apng-m.png);
}



@media (orientation: portrait) and (max-width: 767px) {
	section#intro .fukiwhite{
		width: 100%;
		height: 20vw;
		margin-bottom: 12vw;
		padding-right: 0;
	}
	section#intro .fukiwhite p{
		font-size: 4.4vw;
	}
	section#intro .p1s1base{
		padding: 0 6vw;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items:stretch;
		box-sizing: border-box;
		width: 100%;
		max-width: auto;
	}

	section#intro .p1s1base div{
		width: 62%;
		margin-bottom: 10vw;
	}

	section#intro .p1s1base p{
		font-size: 3.6vw;
		margin-bottom: 8vw;
		letter-spacing: 0;
		line-height: 1.4;
	}
	section#intro .p1s1base span.imgthink{
		position: static;
	}
	section#intro .p1s1base span.imgthink.imgthink_w{
		background: url(../img/top/s1-anim11.png) no-repeat center center;
		background-size: 100%;
		top:0; left: 0;
		width: 28%;
		height: 70vw;
		/* background-color: red; */
	}
	section#intro .p1s1base span.imgthink.imgthink_m{
		background: url(../img/top/s1-anim21.png) no-repeat center center;
		background-size: 100%;
		bottom:0; right: 0;
		width: 32.2%;
		height: 74vw;
		/* background-color: red; */
	}
}

/* S2 */
section#intro2{
	background-color: #f7dad9;
	position: relative;
	overflow: hidden;
	padding: 60px 300px 60px 0;
}
section#intro2::after{
	content: "";
	position: absolute;
	bottom: 160px;
	display: block;
	width: calc(100% + 300px);
	height: 3px;
	background-color: #161c61;
	z-index: 0;
}
section#intro2 .content{
	/* padding: 60px 30px; */
}
section#intro2 .intro2back{
	box-sizing: border-box;
	width: 100%;
	height: 730px;
	background: url(../img/top/s2-basePC.png) no-repeat center center;
	background-size:  contain;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 10;
}
section#intro2 .intro2back .intro2inner{
	margin-top: 300px;
	width: 450px;
	height: 350px;
	display: block;
}
section#intro2 .intro2back .intro2inner p{
	line-height: 3;
	margin-bottom: 10px;
}
section#intro2 .intro2back .intro2inner p:first-child{
	text-align: center;
	margin-bottom: 0;
}
section#intro2 .intro2back .intro2inner p:first-child span{
	display: inline-block;
	width: 300px;
	height: 80px;
	background: url(../img/top/s2-logo.png) no-repeat center center;
	background-size: 100%;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	margin-right: 20px;
}
section#intro2 .intro2back .intro2inner span a{
	color: #c1272d;
	text-decoration: underline;
	font-weight: bold;
}

@media (orientation: portrait) and (max-width: 767px) {
	section#intro2{
		padding: 6vw 0;
	}
	section#intro2::after{
		content: "";
		position: absolute;
		bottom: 0;
		display: none;
		width: 0;
		height: 0;
	}
	section#intro2 .intro2back{
		height: 150vw;
		width: 100%;
		background: url(../img/top/s2-baseSP.png) no-repeat center center;
		background-size: 100%;
	}
	section#intro2 .intro2back .intro2inner{
		margin-top: 40vw;
		width: 70%;
		height: auto;
	}
	section#intro2 .intro2back .intro2inner p{
		line-height:2;
		margin-bottom: 2vw;
	}
	section#intro2 .intro2back .intro2inner p:first-child{
	}
	section#intro2 .intro2back .intro2inner p:first-child span{
		width: 50vw;
		height: 15vw;
		background: url(../img/top/s2-logo.png) no-repeat center bottom;
		background-size: 100%;
	}
}

/* S3 */
section#service.content_header{
	text-align: center;
}

/* section#service figure{
	width: 80%;
	height: 480px;
	margin: 0 auto;
	background: url(../img/top/s3-survicePC.png) no-repeat center bottom;
	background-size: contain;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
section#service .service_detail{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 90%;
	background-color: #eee;
	margin: 0 auto;
}
section#service .service_detail div{
	background-color: red;
	width: 45%;
} */
section#service figure{
	width: 800px;
	height: 400px;
	margin: 0 auto;
	background: url(../img/top/s3-servicePC.svg) no-repeat center bottom;
	background-size: contain;
	background-size: 80%;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}


/* section#service figure.detail{
	width: 800px;
	height: 460px;
	margin: 0 auto;
	background: url(../img/top/s3-servicePCbt.svg) no-repeat center top;
	background-size: contain;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	margin-bottom: 60px;
	position: relative;
}

section#service figure.detail img{
	width: 60px;
	position: absolute;
	bottom: 20px;right: 20px;
} */


section#service .service_detail{
	width: 800px;
	min-height: 460px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: start;
	margin-bottom: 60px;
}
section#service .service_detail>div{
	box-sizing: border-box;
	width: 380px;
	background-color: #fff;
	border-radius: 8px;
	padding: 30px 30px;
}

section#service .service_detail h3{
	display: none;
}
section#service .service_detail ul{
	padding: 0 0;
	margin-bottom: 30px;
}
section#service .service_detail ul li{
	color: #161c61;
	font-size: 15px;
	margin-bottom: 10px;
	text-indent: -1em;
	margin-left: 1em;
	font-weight: bold;
}
section#service .service_detail .detail_dashframe{
	box-sizing: border-box;
	margin: 0 auto;
	width: calc(100% - 6px);
	background-color: #FBEDEC;
	border: dashed 3px #161c61;
	position: relative;
	padding: 15px;
	margin-bottom: 30px;
}
section#service .service_detail .detail_dashframe.blue{
	background-color: #D7EDFA;
}

section#service .service_detail .detail_dashframe::before {
content: "";
width: 200px;
height: 3px;
background: #FFF;
display: inline-block;
position: absolute;
top: -3px;
left: 40%;
transform: translateX(-50%);
}
section#service .service_detail .detail_dashframe h4{
	font-size: 15px;
	position: absolute;
	top: -12px; left: 35px;
}
section#service .service_detail .detail_dashframe p{
	font-size: 15px;
}
section#service .service_detail .sup{
	margin-bottom: 0;
	position: relative;
}
section#service .service_detail .sup p{
	font-size: 14px;
	text-indent: -1em;
	margin-left: 1em;
}
/* section#service .service_detail .sup p:nth-child(2){
	padding-right: 50px;
} */

section#service .service_detail .sup span{
	display: block;
	box-sizing: border-box;
	padding: 10px 10px 0 0;
	display: flex;
	justify-content: start;
	align-items: center;
}
section#service .service_detail .sup span img{
	display: block;
	width: 50px;
	margin-right: 10px;
}
section#service .service_detail .sup span a{
	display: block;
	width: auto;
	padding: 0 24px 0 0;
	text-decoration: underline;
	background-image: url(../img/common/jump.svg);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: 18px;
	height: 20px;
	color: #161c61;
}

section#service .service_link{
	display: flex;
	justify-content:center;
	align-items: center;
	flex-wrap: wrap;
	min-width: 800px;
	margin: 0 auto;
}
section#service .service_link div.linkbtn:first-child{
	margin-right: 40px;
}
section#service .service_link div.linkbtn a{
	width: 360px;
}

@media (orientation: portrait) and (max-width: 767px) {
	section#service figure{
		width: auto;
		height: 90vw;
		background: url(../img/top/s3-serviceSP.svg) no-repeat center bottom;
		background-size: contain;
		margin-bottom: 10vw;
	}

	section#service .service_detail{
		width: 100%;
		min-height: auto;
		display: box;
		margin-bottom: 60px;
	}
	section#service .service_detail>div{
		box-sizing: border-box;
		width: 100%;
		background-color: rgba(0, 0, 0, 0);
		border-radius: 0;
		padding: 0;
	}

	section#service .service_detail h3{
		display: block;
		width: 100%;
		height: 26vw;
		background: url(../img/top/s3-sph1.svg) no-repeat center center;
		background-size: contain;
		text-indent:100%;
		white-space:nowrap;
		overflow:hidden;
		margin-bottom: 4vw;
	}
	section#service .service_detail div:nth-child(2) h3{
		background-image: url(../img/top/s3-sph2.svg);
	}
	section#service .service_detail ul{
		padding: 0 6vw;
		margin-bottom: 6vw;
	}
	section#service .service_detail ul li{
		font-size: 4vw;
		margin-bottom: 2vw;
	}
	section#service .service_detail .detail_dashframe{
		padding: 4vw;
		margin-bottom: 6vw;
	}
	section#service .service_detail .detail_dashframe::before {
	width: 40vw;
	left: 30%;
	}
	section#service .service_detail .detail_dashframe h4{
		font-size: 3.4vw;
		position: absolute;
		top: -3vw; left: 7vw;
	}
	section#service .service_detail .detail_dashframe p{
		font-size: 3.4vw;
	}
	section#service .service_detail .sup{
		margin-bottom: 0;
	}
	section#service .service_detail .sup p{
		font-size: 3vw;
		text-indent: -1em;
		margin-left: 1em;
	}

	section#service .service_detail .sup span{
		padding: 4vw 0 0 4vw;
	}
	section#service .service_detail .sup span img{
		width: 12vw;
		margin-right: 2vw;
	}
	section#service .service_detail .sup span a{
		padding: 0 5vw 0 0;
		background-size: 3.6vw;
		height: 6vw;
	}

	section#service .service_link{
		display: block;
		min-width: auto;
		margin: 0;
	}
	section#service .service_link div.linkbtn:first-child{
		margin-right: 0;
		margin-bottom: 6vw;
	}
	section#service .service_link div.linkbtn a{
		width: 70vw;
	}



}

/* S4 */
section#flow{
	background-color: #d2f0ff;
	padding:  30px 300px 30px 0;
}
section#flow .content_header{
	margin-bottom: 0;
}

section#flow ul{
	text-align: center;
	margin-bottom: 50px;
}
section#flow ul li{
	margin-bottom: 30px;
	position: relative;
}

section#flow ul li>div{
	margin: 0 auto;
	max-width: 800px;
	box-sizing: border-box;
	border: 3px solid #161c61;
	border-radius: 10px;
	background: #fff;
	position: relative;
	height: 140px;
	padding: 20px 40px;
}
section#flow ul li>div .circletxt{
	width: 50px;
	height: 50px;
	background-color: #161c61;
	position: absolute;
	top: -25px; left: 25px;
}
section#flow ul li>div .circletxt span{
	color: #fff;
	font-size: 24px;
	font-weight: bold;
}
section#flow ul li>div h3{
	font-size: 24px;
	margin-top: 10px;
}
section#flow ul li p{
	width: 80%;
	display: block;
	position: absolute;
	font-size: 18px;
	bottom: 30px;
	left: 50%;
	transform: translate(-50%, 0);
}
section#flow ul li p a{
	font-weight: bold;
	color: #c1272d;
	text-decoration: underline;
}
section#flow ul li>div h3.iica{
	margin-top: 0px;
}
section#flow ul li>div h3.iica span{
	padding-top: 10px;
	margin-left: 10px;
	display: inline-block;
	height: 44px;
	width: 44px;
	background-image: url(../img/top/s4-icon2.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
}
section#flow ul li>div h3.iica span:nth-child(2){
	background-image: url(../img/top/s4-icon1.png);
}

@media (orientation: portrait) and (max-width: 767px) {
	section#flow{
		padding:  0;
	}
	section#flow ul li{
		margin-bottom: 10vw;
	}
	
	section#flow ul li>div{
		max-width: auto;
		box-sizing: border-box;
		border: 3px solid #161c61;
		border-radius: 7vw;
		background: #fff;
		position: relative;
		height: 14vw;
		padding:0 ;
		margin-bottom: 4vw;
	}
	section#flow ul li>div .circletxt{
		width: 9vw;
		height: 9vw;
		background-color: #f7dad9;
		position: absolute;
		top: -4.5vw; left: 4.5vw;
		border: 3px solid #161c61;
	}
	section#flow ul li>div .circletxt span{
		color: #161c61;
		font-size: 4.8vw;
	}
	section#flow ul li>div h3{
		font-size: 4.8vw;
		margin-top: 3vw;
	}

	section#flow ul li p{
		width: 100%;
		display: block;
		position: static;
		font-size: 18px;
		bottom: 0;
		left: 0;
		transform: translate(0, 0);
	}
	section#flow ul li p a{
		color: #161c61;
		padding: 0 1vw;
		background-color: #f7dad9;
		text-decoration: none;
	}

	section#flow ul li>div h3.iica{
		margin-top: 3vw;
	}
	section#flow ul li>div h3.iica span{
		display: none;
	}

}

/* S5 */
section#question .content{
	padding-bottom: 0;
}
section#question .fukiwhite{
	width: 600px;
	height: 100px;
	/* background: url(../img/top/s6-fukidashiPC.svg) no-repeat center center; */
	/* background-size: 100%; */
	display: flex;
	justify-content: center;
	align-items: center;
	/* margin-bottom: 60px; */
	background: url(../img/top/s6-fukidashiPC.svg) no-repeat center left;
	background-size: contain;
	margin: 0 auto;
	margin-bottom: 60px;
	padding-right: 28vw;
}
section#question .fukiwhite p{
	padding-left: 180px;
	font-size: 18px;
}

section#question ul li{
	box-sizing: border-box;
	/* padding: 0 0 0 100px; */
	max-width: 880px;
	margin:  0 auto;
}

section#question ul li .q_question{
	background-color: #444;
	width: 100%;
	height: 100px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #aedcf2;
	border-radius: 10px;
	position: relative;
	cursor: pointer;
	margin-top: 40px;
}

section#question ul li:nth-child(2n) .q_question{
	background-color: #f7dad9;
}

section#question ul li .q_question span:first-child{
	display: inline-block;
	margin-left: 30px;
	width: 60px;
	height: 42px;
	background: url(../img/top/s6-q1.png) no-repeat center center;
	background-size: contain;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}


section#question ul li:nth-child(2) .q_question span:first-child{
	background-image: url(../img/top/s6-q2.png);
}
section#question ul li:nth-child(3) .q_question span:first-child{
	background-image: url(../img/top/s6-q3.png);
}
section#question ul li:nth-child(4) .q_question span:first-child{
	background-image: url(../img/top/s6-q4.png);
}
section#question ul li:nth-child(5) .q_question span:first-child{
	background-image: url(../img/top/s6-q5.png);
}
section#question ul li:nth-child(6) .q_question span:first-child{
	background-image: url(../img/top/s6-q6.png);
}
section#question ul li:nth-child(7) .q_question span:first-child{
	background-image: url(../img/top/s6-q7.png);
}
section#question ul li:nth-child(8) .q_question span:first-child{
	background-image: url(../img/top/s6-q8.png);
}


section#question ul li .q_question h3{
	margin-left: 30px;
	font-size: 20px;
	display: inline-block;
	width: calc( 100% - 120px);
}
section#question ul li .q_question span.arrow{
	display: block;
	margin-right: 30px;
	width: 30px;
	height: 15px;
	background: url(../img/top/s6-qopen.svg) no-repeat center center;
	background-size: 100%;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	transition: transform  0.3s;
}
section#question ul li .q_question.s6opend span.arrow{
	transform: rotate(180deg);
}


section#question ul li .q_answer_wrap{
	padding: 40px 0 60px 40px;
	display: none;
}
section#question ul li .q_answer h3{
	box-sizing: border-box;
	display: block;
	width: 100%;
	min-height: 40px;
	background: url(../img/top/s6-a.svg) no-repeat top left 10px;
	background-size: auto 40px ;
	font-size: 20px;
	padding: 8px 0 0 70px;
	margin-bottom: 20px;
}
section#question ul li .q_answer>div{
	padding: 0 0 0 70px;
}
section#question ul li .q_answer>div p{
}
section#question ul li .q_answer>div .flx{
	justify-content: start;
}
section#question ul li .q_answer>div .flx div{
	margin-left: 1em;
}
section#question ul li .q_answer>div .flx div{
	width: 45%;
	margin-bottom: 30px;
}


section#question ul li .q_answer>div figure.q5fig{
	margin: 30px 0;
	width: 100%;
	max-width: 630px;
	height: 400px;
	background-image: url(../img/top/s6-q5PC.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 100%;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}



@media (orientation: portrait) and (max-width: 767px) {
	section#question .fukiwhite{
		width: 100%;
		height: 18vw;
		background-image: url(../img/top/s6-fukidashiSP.svg);
		background-position: center center;
		background-size: contain;
		/* margin-bottom: 16vw; */
		/* text-indent:100%;
		white-space:nowrap;
		overflow:hidden; */
		margin: 0;
		margin-bottom: 16vw;
		padding: 0;
	}
	section#question .fukiwhite p{
		padding-left: 0;
		margin-top: 30vw;
		font-size: 3vw;
	}
	section#question ul li{
		max-width: auto;
		padding: 0 0 0 0;
	}
	section#question ul li .q_question{
		box-sizing: border-box;
		background-color: #fff;
		border: 3px solid #161c61;
		width: 100%;
		height: 20vw;
		border-radius: 2vw;
		margin-top: 6vw;
	}
	section#question ul li:nth-child(2n) .q_question{
		background-color: #fff;
	}
	section#question ul li .q_question span:first-child{
		margin-left: 4vw;
		width: 11vw;
		height: 8vw;
	}
	section#question ul li .q_question h3{
		margin-left: 3vw;
		font-size: 3.2vw;
		width: calc( 100% - 24vw);
	}
	section#question ul li .q_question span.arrow{
		margin-left: 3vw;
		margin-right: 4vw;
		width: 5vw;
		height: 2.5vw;
	}
	section#question ul li .q_answer_wrap{
		padding: 6vw 2vw 12vw 2vw;
	}
	section#question ul li .q_answer h3{
		min-height: 8vw;
		background: url(../img/top/s6-a.svg) no-repeat top left 2vw;
		background-size: auto 8vw ;
		font-size: 3.2vw;
		padding: 2vw 0 0 14vw;
		margin-bottom: 2vw;
	}
	section#question ul li .q_answer>div{
		padding: 0 0 0 0;
	}
	section#question ul li .q_answer>div p{
		font-size: 3.2vw;
	}
	section#question ul li .q_answer>div .flx{
		display: block;
	}
	section#question ul li .q_answer>div .flx div{
		/* margin-left: 1em; */
	}
	section#question ul li .q_answer>div .flx div{
		width: 100%;
		margin-bottom: 0;
	}


	section#question ul li .q_answer>div figure.q5fig{
		margin: 6vw 0;
		width: 100%;
		max-width: auto;
		height: 120vw;
		background-image: url(../img/top/s6-q5SP.svg);
	}
	section#question ul li .q_answer>div .q5figsp{
		margin-top: 4vw;
	}
	section#question ul li .q_answer>div .q5figsp ul li{
		background-color: #d2f0ff;
		/* background-color: #f7dad9; */
		border-radius: 2vw;
		display: block;
		box-sizing: border-box;
		padding: 3vw 1vw 3vw 3vw;
		margin-bottom: 2vw;
	}
	section#question ul li .q_answer>div .q5figsp ul li:last-child{
		background-color: #f7dad9;
		margin-bottom: 4vw;
	}
	section#question ul li .q_answer>div .q5figsp ul li:last-child h4{
		color: #a01324;
	}

	section#question ul li .q_answer .ared{
		color: #161c61;
		background-color: #f7dad9;
		text-decoration: none;
	}
	
}
/*==============================================================
	PAGE2 DETAILS
==============================================================*/
.breadcrumbs{
	width: 100%;
}
.breadcrumbs ul li{
	color: #161c61;
	display: inline-block;
	font-size: 14px;
}

@media (orientation: portrait) and (max-width: 767px) {
	.breadcrumbs{
		display: none;
	}
}

#page .content_header{
	margin-bottom: 60px;
}
#page .content_header h2{
	margin-bottom: 0;
}

@media (orientation: portrait) and (max-width: 767px) {
	#page .content_header{
		margin-bottom: 12vw;
	}
}


/* S1 */
section#step .content{
	padding-top: 10px;
}

@media (orientation: portrait) and (max-width: 767px) {
	section#step .content{
		padding-top: 2vw;
	}
}
section#step .scdet>div.pcfig{
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	width: 650px;
	height: 1200px;
}
section#step .scdet>div.pcfig figure{
	display: block;
	width: 280px;
	height: 800px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	background-repeat: no-repeat;
	background-position: top left;
	background-image: url(../img/details/s1-stepl.svg);
	background-size: 100%;
}
section#step .scdet>div.pcfig figure:nth-child(2){
	width: 370px;
	height: 1220px;
	background-image: url(../img/details/s1-stepr.svg);
}
section#step .scdet>div.spfig{
	display: none;
}

@media (orientation: portrait) and (max-width: 767px) {
	section#step .scdet>div.pcfig{
		display: none;
	}
	section#step .scdet>div.spfig{
		display: block;
	}
	section#step .scdet>div.spfig figure{
		display: block;
		width: 100%;
		height: 220vw;
		text-indent:100%;
		white-space:nowrap;
		overflow:hidden;
		background-repeat: no-repeat;
		background-position: top left;
		background-image: url(../img/details/s1-stepSP.svg);
		background-size: 100%;
	}
}


/* S2 */
section#price{
	background-color: #aedcf2;
	margin-bottom: 0;
}
section#price .scdet ul{
	width: 100%;
	max-width: 660px;
	margin: 0 auto;
}
section#price .scdet ul li{
	border-radius: 8px ;
	background-color: #fff;
	margin-bottom: 30px;
	background-repeat: no-repeat;
	background-position: center left 30px;
	background-image: url(../img/details/s2-icon1.svg);
	background-size: 64px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 25px 30px 25px 120px;
}
section#price .scdet ul li:nth-child(2){background-image: url(../img/details/s2-icon2.svg);}
section#price .scdet ul li:nth-child(3){background-image: url(../img/details/s2-icon3.svg);}
section#price .scdet ul li:nth-child(4){background-image: url(../img/details/s2-icon4.svg);}
section#price .scdet ul li:nth-child(5){background-image: url(../img/details/s2-icon5.svg);}

section#price .scdet ul li span{
	text-align: right;
}

@media (orientation: portrait) and (max-width: 767px) {
	section#price .scdet ul{
		width: 100%;
		max-width: auto;
	}
	section#price .scdet ul li{
		border-radius: 1.6vw ;
		margin-bottom: 6vw;
		background-image: none;
		padding: 5vw 4vw 5vw 4vw;
	}
	section#price .scdet ul li:nth-child(2){background-image: none;}
	section#price .scdet ul li:nth-child(3){background-image: none;}
	section#price .scdet ul li:nth-child(4){background-image: none;}
	section#price .scdet ul li:nth-child(5){background-image: none;}
}
/* S3 */
section#message{
	background-color: #f7dad9;
}
section#message .scdet p{
	width: 100%;
	max-width: 780px;
	margin: 0 auto;
	margin-bottom: 30px;
	line-height: 2;
	/* font-feature-settings: "palt"; */
}

@media (orientation: portrait) and (max-width: 767px) {
	section#message .scdet p{
		max-width: auto;
		margin-bottom: 6vw;
	}
}

/* S4 */
section#logo{
}
section#logo .scdet{
	width: 100%;
	max-width: 780px;
	margin: 0 auto;
	text-align: center;
}
section#logo .scdet img{
	width: 200px;
	margin-bottom: 40px;
}
section#logo .scdet h3{
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: url(../img/details/s4-theme.svg);
	background-size: contain;
	width: 720px;
	height: 100px;
	margin: 0 auto;
	margin-bottom: 40px;
}
section#logo .scdet p{
	line-height: 2.5;
}
@media (orientation: portrait) and (max-width: 767px) {
	section#logo .scdet{
		max-width: auto;
	}
	section#logo .scdet img{
		width: 30vw;
		margin-bottom: 8vw;
	}
	section#logo .scdet h3{
		width: 100%;
		height: 16vw;
		margin-bottom: 8vw;
	}
}

/* S5 */
section#profile{
	background-color: #aedcf2;
	margin-bottom: 0;
}
section#profile .scdet{
	box-sizing: border-box;
	width: 100%;
	max-width: 660px;
	margin: 0 auto;
	padding: 30px 0 30px 10px;
	line-height: 1.8;
	font-size: 18px;
}
section#profile .scdet h3{
	font-weight: normal;
}

@media (orientation: portrait) and (max-width: 767px) {
	section#profile .scdet{
		width: 92%;
		max-width: auto;
		padding: 6vw 0;
		line-height: 1.8;
		font-size: 3.2vw;
	}
}

/* S6 */
section#member{
	background-color: #f7dad9;
	margin-bottom: 0;
}
section#member .scdet{
	width: 100%;
	max-width: 920px;
	margin: 0 auto;
}

section#member .scdet>p{
	padding: 0 40px;
	margin-bottom: 40px;
	text-align: center;
}
section#member .scdet ul{
}
section#member .scdet ul li{
	border-radius: 8px ;
	background-color: #fff;
	margin-bottom: 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 50px 40px;
}
section#member .scdet ul li>img{
	width: 210px;
	height: 260px;
}
section#member .scdet ul li>div{
	width: calc( 100% - 210px - 40px);
}
section#member .scdet ul li>div h3{
	font-weight: normal;
	display: inline-block;
	font-size: 24px;
}
section#member .scdet ul li>div span{
	display: inline-block;
	margin-left: 20px;
	font-size: 14px;
	margin-bottom: 20px;
}
section#member .scdet ul li>div p{
	font-size: 18px;
}

@media (orientation: portrait) and (max-width: 767px) {
	section#member .scdet{
		/* width: 92%; */
		max-width: auto;
	}
	
	section#member .scdet>p{
		padding: 0 4vw;
		margin-bottom: 8vw;
		line-height: 1.8;
		font-size: 3.2vw;
		text-align: left;
	}
	section#member .scdet ul{
	}
	section#member .scdet ul li{
		border-radius: 1.6vw ;
		margin-bottom: 8vw;
		display: block;
		padding: 10vw 6vw;
	}
	section#member .scdet ul li>img{
		margin: 0 auto;
		width: 40vw;
		height: auto;
		margin-bottom: 6vw;
	}
	section#member .scdet ul li>div{
		width: 100%;
	}
	section#member .scdet ul li>div h3{
		display: block;
		font-size: 4.8vw;
		text-align: center;
	}
	section#member .scdet ul li>div span{
		display: block;
		margin-left: 0;
		font-size: 3vw;
		margin-bottom: 4vw;
		text-align: center;
	}
	section#member .scdet ul li>div p{
		font-size: 3.2vw;
		line-height: 1.8;
	}
}

/*==============================================================
	MISC
==============================================================*/
h2.sc_titlelg{
	width: 640px;
	height: 80px;
	margin: 0 auto;
	margin-bottom: 30px;
	text-indent:100%;
	white-space:nowrap;
	/* overflow:hidden; */
	background-repeat: no-repeat;
	background-position: center left;
	background-image: url(../img/details/s5-h1.svg);
	background-size: contain;
}
/* section#profile h2.sc_titlelg{
	background-image: url(../img/details/s5-h1.svg);
} */
section#member h2.sc_titlelg{
	width: 320px;
	background-image: url(../img/details/s6-h1.svg);
}
@media (orientation: portrait) and (max-width: 767px) {
	h2.sc_titlelg{
		width: 48%;
		height: 8vw;
		margin-bottom: 6vw;
		background-image: url(../img/details/s5-h1SP.svg);
		position: relative;
		margin-left: 4vw;
	}
	h2.sc_titlelg span{
		position: absolute;
		top: 1.5vw; right: -6vw;
	}
	/* section#profile h2.sc_titlelg{
		background-image: url(../img/details/s5-h1SP.svg);
	} */
	section#member h2.sc_titlelg{
		width: 24%;
		background-image: url(../img/details/s6-h1SP.svg);
	}
}

a.ared{
	font-weight: bold;
	color: #c1272d;
	text-decoration: underline;
}

.linkbtn{
	text-align: center;
}
.linkbtn.red a{
	background-color: #a01324;
}
.linkbtn.blue a{
	background-image: url(../img/top/linkbtnblue.svg);
	background-color: #161c61;
}
.linkbtn a{
	color: #fff;
	font-weight: bold;
	line-height: 1;
	padding: 30px 0 30px 10px;
	font-size: 22px;
	display: block;
	width: 400px;
	margin: 0 auto;
	border-radius: 40px;
	background: url(../img/top/linkbtnred.svg) no-repeat center left 50px;
	background-size: 28px;
}

.linkbtn a{
	transition: transform 0.2s linear;
}
.linkbtn a:hover{
	transform: translateY(-8px);
}

@media (orientation: portrait) and (max-width: 767px) {
	.linkbtn a{
		display: block;
		border-radius: 8vw;
		background: url(../img/top/linkbtnred.svg) no-repeat center left 8vw;
		background-size: 4vw;
		padding: 5vw 0 5vw 2vw;
		font-size: 4vw;
		width: 70vw;
	}
}




.content_header{
	text-align: center;
	margin-bottom: 60px;
}
.content_header h2{
	font-size: 25px;
	display: inline-block;
	position: relative;
	margin-bottom: 60px;
}
.content_header h2::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0px;
	width: 100%;
	height: 3px;
	background-image: url(../img/common/underlineshort.png);
	background-position: top left;
	background-repeat: repeat-x;
	background-size: auto 100%;
}
@media (orientation: portrait) and (max-width: 767px) {
	.content_header{
		margin-bottom: 12vw;
	}
	.content_header h2{
		font-size: 6vw;
		margin-bottom: 12vw;
		padding-bottom: 0.8vw;
	}
	.content_header h2::after{
		width: 100%;
		height: 0.6vw;
	}
}



.txt-red{
	color: #c1272d;
}
strong{
	/* font-weight: normal; */
}
.txt-dashline{
	display: inline-block;
	position: relative;
	padding-bottom: 2px;
}

.txt-dashline::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0px;
	width: 100%;
	height: 3px;
	/* background-color: #f7dad9; */
	background-image: url(../img/common/underlineshort.png);
	background-position: top left;
	background-repeat: repeat-x;
	background-size: auto 100%;
}

.anim .txt-dashline::after{
	width: 0;
	transition: width 1.2s cubic-bezier(0.8, 0, 0.2, 1);
	/* transition: width 1s linear; */
}

.anim.is-animated .txt-dashline::after{
	width: 100%;
}
.anim .txt-dashline.delay3::after{transition-delay: 0.3s;}
.anim .txt-dashline.delay6::after{transition-delay: 0.6s;}
.anim .txt-dashline.delay9::after{transition-delay: 0.9s;}
.anim .txt-dashline.delay12::after{transition-delay: 1.2s;}
.anim .txt-dashline.delay15::after{transition-delay: 1.5s;}
.anim .txt-dashline.delay18::after{transition-delay: 1.8s;}
.anim .txt-dashline.delay21::after{transition-delay: 2.1s;}
.anim .txt-dashline.delay24::after{transition-delay: 2.4s;}

.anim .txt-dashline.delay5::after{transition-delay: 0.5s;}
.anim .txt-dashline.delay10::after{transition-delay: 1.0s;}
.anim .txt-dashline.delay15::after{transition-delay: 1.5s;}
.anim .txt-dashline.delay20::after{transition-delay: 2.0s;}
.anim .txt-dashline.delay25::after{transition-delay: 2.5s;}
.anim .txt-dashline.delay30::after{transition-delay: 3.0s;}
.anim .txt-dashline.delay35::after{transition-delay: 3.5s;}
.anim .txt-dashline.delay40::after{transition-delay: 4.0s;}
.anim .txt-dashline.delay45::after{transition-delay: 4.5s;}

.anim .txt-dashline.delay3::after{transition-delay: 0.3s;}
.anim .txt-dashline.delay8::after{transition-delay: 0.8s;}
.anim .txt-dashline.delay13::after{transition-delay: 1.3s;}
.anim .txt-dashline.delay18::after{transition-delay: 1.8s;}
.anim .txt-dashline.delay23::after{transition-delay: 2.3s;}
.anim .txt-dashline.delay28::after{transition-delay: 2.8s;}


.txt-dashline.sizebg{
	padding-bottom: 8px;
}
@media (orientation: portrait) and (max-width: 767px) {
	.txt-dashline::after{
		width: 100%;
		height: 0.6vw;
	}
	.txt-dashline{
		padding-bottom: 1vw;
		padding-bottom: 0.4vw;
	}
	.txt-dashline.sizebg{
		padding-bottom: 1.8vw;
	}
}

.txt-bcpink{
	padding: 0 5px;
	background-color: #f7dad9;
}
.txt-bcblue{
	padding: 0 5px;
	background-color: #aedcf2;
}
@media (orientation: portrait) and (max-width: 767px) {
	.txt-bcpink{
		padding: 0 1vw;
	}
	.txt-bcblue{
		padding: 0 1vw;
	}
}
.txt-bcred{
	padding: 0 5px;
	background-color: #c1272d;
	color: #fff;
}
@media (orientation: portrait) and (max-width: 767px) {
	.txt-bcred{
		padding: 0 1vw;
	}
}


.anim.txt-bcanim{
	width: 100%;
	height: 100%;
	z-index: 10;
	background-color: rgba(0, 0, 0, 0);
	position: relative;
	padding: 0 5px;
}

.anim.txt-bcanim:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 0;
	display: block;
	/* background: #aedcf2; */
	z-index: -1;
	transition: width 0.6s cubic-bezier(0.8, 0, 0.2, 1);
}
.anim.txt-bcanim.is-animated:before{
	width: 100%;
}
.anim.txt-bcanim.bcblue:before{background: #aedcf2;}
.anim.txt-bcanim.bcpink:before{background: #f7dad9;}

@media (orientation: portrait) and (max-width: 767px) {
	.anim.txt-bcanim{
		padding: 0 1vw;
	}
}

nav.menu ul li a::after{
}
nav.menu ul li a:hover::after{
	animation: nobiru 0.6s cubic-bezier(0.8, 0, 0.2, 1);
}

@keyframes nobiru {
	from {
		width: 0;
	}
	to {
		width: 100%;
	}
}

/*==============================================================
	ANIMATION
==============================================================*/


.slideUp{
	opacity: 0;
}

.is-animated.slideUp {
    animation-name:slideTextY100;
    animation-duration: 1s;
    animation-fill-mode:forwards;
}
.is-animated.slideUp.delay3 {
    animation-delay: 0.3s;
}
.is-animated.slideUp.delay6 {
    animation-delay: 0.6s;
}
.is-animated.slideUp.delay9 {
    animation-delay: 0.9s;
}
.is-animated.slideUp.delay12 {
    animation-delay: 1.2s;
}

@keyframes slideTextY100 {
    from {
        transform: translateY(50%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/*==============================================================
	MISC
==============================================================*/

span.pc_blank{
	display: inline-block;
}

@media (orientation: portrait) and (max-width: 767px) {
	span.pc_blank{
		display: none;
	}
}

/* .f-palt{
	font-feature-settings: "palt";
} */