@charset "utf-8";

/* ======================================================
 * 04.css
 * ------------------------------------------------------
 * Reset
 * Basic
 * General Purpose
 * PC Style @media print, screen and (min-width: 641px)
   - Basic
   - General Purpose
   - Layout
   - Component
   - Clearfix
 * SP Style @media print, screen and (min-width: 640px)
   - Basic
   - General Purpose
   - Layout
   - Component
   - Clearfix
====================================================== */

/* ======================================================
 * Reset
====================================================== */
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,sectiontion,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}
body{line-height:1;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,sectiontion{display:block;}
nav ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
ins{background-color:#ff9;color:#000;text-decoration:none;}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}
del{text-decoration: line-through;}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help;}
table{border-collapse:collapse;border-spacing:0;}
hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}
input,select{vertical-align:middle;}

/* ----- custom ----- */
main{display:block;margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}
h1,h2,h3,h4,h5,h6,small{font-weight:normal;}
ul,ol{list-style:none;}
strong{font-weight:bold;}
em,i{font-style:italic;}
address{font-style:normal;}
hr,legend{display:none;}
time{display:block;}
sub,sup{position:relative;font-size:60%;line-height:1;}
sup{top:-.6em;}
sub{bottom:-.1em;}
img{max-width:100%;height:auto;vertical-align:top;}

/* ======================================================
 * Basic
====================================================== */
html {
	font-size: 62.5%;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
body {
	color: #333;
	font: 1.5rem/1.75 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	word-wrap : break-word;
}
body *,
body *::before,
body *::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* ----- a ----- */
a:link {color:#333;text-decoration:none;}
a:visited {color:#333;text-decoration:none;}
a:hover {color:#73011a;text-decoration:none;}
a:active {color:#73011a;text-decoration:none;}

/* ----- form ----- */
input,
select,
textarea,
button,
pre {
	border-radius: 0;
	box-shadow: none;
	color: #333;
	font: 1.5rem/1.75 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
input[type="text"],
textarea {
	-webkit-appearance: none;
	appearance: none;
}
/* placeholder */
::-webkit-input-placeholder { color: #bfbfbf; }
:-ms-input-placeholder { color: #bfbfbf; }
::-moz-placeholder { color: #bfbfbf; opacity: 1; }

/* ======================================================
 * General Purpose
====================================================== */
/* ----- width ----- */
.gp-w-auto{width:auto!important;}.gp-w-001per{width:1%!important;}.gp-w-002per{width:2%!important;}.gp-w-003per{width:3%!important;}.gp-w-004per{width:4%!important;}.gp-w-005per{width:5%!important;}.gp-w-006per{width:6%!important;}.gp-w-007per{width:7%!important;}.gp-w-008per{width:8%!important;}.gp-w-009per{width:9%!important;}.gp-w-010per{width:10%!important;}.gp-w-011per{width:11%!important;}.gp-w-012per{width:12%!important;}.gp-w-013per{width:13%!important;}.gp-w-014per{width:14%!important;}.gp-w-015per{width:15%!important;}.gp-w-016per{width:16%!important;}.gp-w-017per{width:17%!important;}.gp-w-018per{width:18%!important;}.gp-w-019per{width:19%!important;}.gp-w-020per{width:20%!important;}.gp-w-021per{width:21%!important;}.gp-w-022per{width:22%!important;}.gp-w-023per{width:23%!important;}.gp-w-024per{width:24%!important;}.gp-w-025per{width:25%!important;}.gp-w-026per{width:26%!important;}.gp-w-027per{width:27%!important;}.gp-w-028per{width:28%!important;}.gp-w-029per{width:29%!important;}.gp-w-030per{width:30%!important;}.gp-w-031per{width:31%!important;}.gp-w-032per{width:32%!important;}.gp-w-033per{width:33%!important;}.gp-w-034per{width:34%!important;}.gp-w-035per{width:35%!important;}.gp-w-036per{width:36%!important;}.gp-w-037per{width:37%!important;}.gp-w-038per{width:38%!important;}.gp-w-039per{width:39%!important;}.gp-w-040per{width:40%!important;}.gp-w-041per{width:41%!important;}.gp-w-042per{width:42%!important;}.gp-w-043per{width:43%!important;}.gp-w-044per{width:44%!important;}.gp-w-045per{width:45%!important;}.gp-w-046per{width:46%!important;}.gp-w-047per{width:47%!important;}.gp-w-048per{width:48%!important;}.gp-w-049per{width:49%!important;}.gp-w-050per{width:50%!important;}.gp-w-051per{width:51%!important;}.gp-w-052per{width:52%!important;}.gp-w-053per{width:53%!important;}.gp-w-054per{width:54%!important;}.gp-w-055per{width:55%!important;}.gp-w-056per{width:56%!important;}.gp-w-057per{width:57%!important;}.gp-w-058per{width:58%!important;}.gp-w-059per{width:59%!important;}.gp-w-060per{width:60%!important;}.gp-w-061per{width:61%!important;}.gp-w-062per{width:62%!important;}.gp-w-063per{width:63%!important;}.gp-w-064per{width:64%!important;}.gp-w-065per{width:65%!important;}.gp-w-066per{width:66%!important;}.gp-w-067per{width:67%!important;}.gp-w-068per{width:68%!important;}.gp-w-069per{width:69%!important;}.gp-w-070per{width:70%!important;}.gp-w-071per{width:71%!important;}.gp-w-072per{width:72%!important;}.gp-w-073per{width:73%!important;}.gp-w-074per{width:74%!important;}.gp-w-075per{width:75%!important;}.gp-w-076per{width:76%!important;}.gp-w-077per{width:77%!important;}.gp-w-078per{width:78%!important;}.gp-w-079per{width:79%!important;}.gp-w-080per{width:80%!important;}.gp-w-081per{width:81%!important;}.gp-w-082per{width:82%!important;}.gp-w-083per{width:83%!important;}.gp-w-084per{width:84%!important;}.gp-w-085per{width:85%!important;}.gp-w-086per{width:86%!important;}.gp-w-087per{width:87%!important;}.gp-w-088per{width:88%!important;}.gp-w-089per{width:89%!important;}.gp-w-090per{width:90%!important;}.gp-w-091per{width:91%!important;}.gp-w-092per{width:92%!important;}.gp-w-093per{width:93%!important;}.gp-w-094per{width:94%!important;}.gp-w-095per{width:95%!important;}.gp-w-096per{width:96%!important;}.gp-w-097per{width:97%!important;}.gp-w-098per{width:98%!important;}.gp-w-099per{width:99%!important;}.gp-w-100per{width:100%!important;}

/* ----- margin ----- */
.gp-mt-0{margin-top:0!important;}
.gp-mr-0{margin-right:0!important;}
.gp-mb-0{margin-bottom:0!important;}
.gp-ml-0{margin-left:0!important;}

/* ----- padding ----- */
.gp-pt-0{padding-top:0!important;}
.gp-pr-0{padding-right:0!important;}
.gp-pb-0{padding-bottom:0!important;}
.gp-pl-0{padding-left:0!important;}

/* ----- border ----- */
.gp-bd-none{border:none!important;}
.gp-bd-t-none{border-top:none!important;}
.gp-bd-r-none{border-right:none!important;}
.gp-bd-b-none{border-bottom:none!important;}
.gp-bd-l-none{border-left:none!important;}

/* ----- br ----- */
.gp-br-all{word-break:break-all!important;}
.gp-br-nowrap{white-space:nowrap!important;}

/* ----- align ----- */
.gp-al-center{text-align:center!important;}
.gp-al-right{text-align:right!important;}
.gp-al-left{text-align:left!important;}
.gp-al-top{vertical-align:top!important;}
.gp-al-middle{vertical-align:middle!important;}
.gp-al-bottom{vertical-align:bottom!important;}

/* ----- flex ----- */
.gp-fl-h-left{-webkit-justify-content:flex-start!important;justify-content:flex-start!important;}
.gp-fl-h-center{-webkit-justify-content:center!important;justify-content:center!important;}
.gp-fl-h-right{-webkit-justify-content:flex-end!important;justify-content:flex-end!important;}
.gp-fl-v-top{-webkit-align-items:flex-start!important;align-items:flex-start!important;}
.gp-fl-v-center{-webkit-align-items:center!important;align-items:center!important;}
.gp-fl-v-bottom{-webkit-align-items:flex-end!important;align-items:flex-end!important;}

/* ----- font ----- */
.f-bold{font-weight:bold!important;}
.f-color{color:#73011a!important;}
.f-italic{font-style:italic!important;}
.f-underline{text-decoration:underline!important;}
.f-strike{text-decoration:line-through!important;}
.f-normal-weight{font-weight:normal!important;}
.f-normal-style{font-style:normal!important;}
.f-size-small{font-size:80%!important;}
.f-size-large{font-size:120%!important;}
.f-orange {color:#BA5D00}

header {
	background: #656565;
	background: -webkit-gradient(linear, left top, left bottom, from(#656565), to(#474747));
	background: -moz-linear-gradient(top, #656565 0%, #474747 100%);
	background: linear-gradient(to bottom, #656565 0%, #474747 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#656565', endColorstr='#474747',GradientType=0 );
}
a:hover {
	text-decoration: underline;
}

/* ======================================================
 * kv
====================================================== */
@media print, screen and (min-width: 641px) {
	.kv {
		width: 100%;
		margin-bottom: 70px;
	}
	.kv-background-wrap {
		max-width: 1500px;
		position: relative;
		margin: 0 auto;
	}
	.kv-background {
		width: 76.5%;
		margin-left: 23.5%;
		height: 500px;
		object-fit: cover;
		object-position: 100% 55%;
	}
	.kv-key {
		position: absolute;
		margin: auto;
		left: 20px;
		right: 0;
		top: 32.5px;
		width: 100%;
	}
	.kv-key img {
		height: 435px;
		width: auto;
	}
	.kv-key .gtm_syoukaiLP07_cvBtn::after {
		background-size: contain;
		width: 40px;
		height: 9px;
		right: 7px;
	}
}
@media only screen and (max-width: 640px) {
	.kv {
		width: 100%;
		background-color: #F0F0F0;
	}
	.kv-background {
		width: 100%;
		height: 72vw;
		object-fit: cover;
		object-position: 100% 50%;
		font-family: 'object-fit: cover; object-position: 100% 50%;';
	}
	.kv-key {
		width: calc(100% - 30px);
		max-width: 375px;
		margin: auto;
		display: block;
		margin-top: -40px;
	}
	.kv-key img {
		width: 100%;
	}
}

/* ======================================================
 * section
====================================================== */
@media print, screen and (min-width: 641px) {
	.section {
		margin: 80px 0;
	}
}
@media only screen and (max-width: 640px) {
	.section {
		margin: 60px 0;
	}
}
/* ======================================================
 * h2
====================================================== */
@media print, screen and (min-width: 641px) {
	.section h2 {
		font-weight: bold;
		font-size: 28px;
		line-height: 1.4;
		text-align: center;
		margin-bottom: 40px;
	}
	.section h2 .emphasis {
		font-size: 40px;
	}
	.h2-arrow {
		margin: 25px auto 60px;
		display: block;
	}
}
@media only screen and (max-width: 640px) {
	.section h2 {
		font-weight: bold;
		font-size: 24px;
		line-height: 1.4;
		text-align: center;
		margin-bottom: 30px;
	}
	.section h2 .emphasis {
		font-size: 32px;
		margin-top: 10px;
		display: inline-block;
	}
	.h2-arrow {
		width: 165px;
		display: block;
		margin: 17px auto 55px;
	}
	.section--02 h2,
	.section--03 h2 {
		font-size: 16px;
	}
}

/* ======================================================
 * solution
====================================================== */
@media print, screen and (min-width: 641px) {
	.solution {
		margin-bottom: 80px;
	}
	.solution-main {
		width: 100%;
		margin-bottom: 10px;
	}
	.solution-main img {
		width: 100%;
	}
	.solution-3col {
		display: flex;
		justify-content: space-between;
		text-align: center;
	}
	.solution-3col-item {
		width: 32.9%;
		border: solid 1px #333333;
	}
	.solution-3col-itemTitle {
		font-size: 18px;
		font-weight: bold;
		color: #333333;
		padding: 20px 10px;
	}
	.solution-3col-itemImg,
	.solution-3col-itemImg img {
		width: 100%;
	}
	.solution-3col-itemDetail {
		font-size: 16px;
		color: #333333;
		padding: 16px 10px;
		background: linear-gradient(to right, #EEE7CC, #D3E3D8,#DAD9D1);
	}
}
@media only screen and (max-width: 640px) {
	.solution {
		margin-bottom: 50px;
	}
	.solution-main {
		width: 100%;
		margin: 0 -15px 10px;
        width: calc(100% + 30px);
	}
	.solution-main img {
		width: 100%;
	}
	.solution-3col {
		text-align: center;
	}
	.solution-3col-item {
		width: 100%;
		border: solid 1px #333333;
	}
	.solution-3col-item:not(:last-of-type) {
		margin-bottom: 5px;
	}
	.solution-3col-item-inner {
		display: flex;
		flex-direction: row-reverse;
	}
	.solution-3col-itemTitle {
		font-size: 18px;
		font-weight: bold;
		color: #333333;
		width: 56.3%;
		text-align: left;
		display: flex;
		align-items: center;
		padding: 15px 0 15px 15px;
	}
	.solution-3col-itemImg {
		width: 43.7%;
	}
	.solution-3col-itemImg img {
		width: 100%;
	}
	.solution-3col-itemDetail {
		font-size: 16px;
		color: #333333;
		padding: 12px 10px;
		background: linear-gradient(to right, #EEE7CC, #D3E3D8,#DAD9D1);
	}
}

/* ======================================================
 * support
====================================================== */
@media print, screen and (min-width: 641px) {
	.support-3col {
		display: flex;
		justify-content: space-between;
	}
	.support-3col-item {
		width: 30%;
		border: solid 1px #BA5D00;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 25px 0;
		position: relative;
	}
	.support-3col-item p {
		text-align: center;
		color: #BA5D00;
		font-size: 24px;
		font-weight: bold;
		line-height: 1.2;
	}
	.support-3col-item p span {
		font-size: 18px;
	}
	.support-3col-item:not(:last-of-type)::before,
	.support-3col-item:not(:last-of-type)::after {
		content: "";
		display: block;
		position: absolute;
		top: calc(50% - 20px);
		right: -9%;
		width: 1px;
		height: 40px;
		background-color: #333333;
	}
	.support-3col-item:not(:last-of-type)::before {
		transform: rotate(-45deg);
	}
	.support-3col-item:not(:last-of-type)::after {
		transform: rotate(45deg);
	}
}
@media only screen and (max-width: 640px) {
	.support-3col {
		width: 90%;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
	}
	.support-3col-item {
		width: 100%;
		border: solid 1px #BA5D00;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 20px 0;
		margin-bottom: 42px;
		position: relative;
	}
	.support-3col-item:last-of-type {
		margin-bottom: 0;
	}
	.support-3col-item p {
		text-align: center;
		color: #BA5D00;
		font-size: 20px;
		font-weight: bold;
		line-height: 1.2;
	}
	.support-3col-item p span {
		font-size: 14px;
	}
	.support-3col-item:not(:last-of-type)::before,
	.support-3col-item:not(:last-of-type)::after {
		content: "";
		display: block;
		position: absolute;
		bottom: -37px;
		right: 50%;
		width: 1px;
		height: 30px;
		background-color: #333333;
	}
	.support-3col-item:not(:last-of-type)::before {
		transform: rotate(-45deg);
	}
	.support-3col-item:not(:last-of-type)::after {
		transform: rotate(45deg);
	}
}

/* ======================================================
 * case
====================================================== */
@media print, screen and (min-width: 641px) {
	.case {
		border: solid 1px #333333;
		margin-bottom: 50px;
	}
	.case:not(:last-of-type) {
		margin-bottom: 40px;
	}
	.case-title {
		position: relative;
		padding: 40px;
		line-height: 1;
		font-weight: bold;
		border-bottom: 1px solid #333333;
	}
	.case-title::before {
		content: "";
		display: block;
		position: absolute;
		bottom: -30px;
		left: calc(50% - 20px);
		margin-left: -10px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 30px 30px 0;
		border-color: transparent #333333 transparent transparent;
	}
	.case-title::after {
		content: "";
		display: block;
		position: absolute;
		bottom: -39px;
		left: calc(50% - 20px);
		margin-left: -10px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 40px 40px 0;
		border-color: transparent #fff transparent transparent;
	}
	.case-title-subheading {
		font-size: 16px;
		margin-bottom: 15px;
		color: #BA5D00;
		font-weight: bold;
	}
	.case-title-subheading span {
		font-size: 28px;
	}
	.case-title-heading {
		font-size: 28px;
		color: #333333;
		font-weight: bold;
	}
	.case-inner {
		padding: 64px 40px 40px;
	}
	.case-inner .read {
		font-size: 16px;
		line-height: 2;
		margin-bottom: 40px;
		color: #333333;
	}
	.case-2col {
		display: flex;
		justify-content: space-between;
	}
	.case-2col-equal {
		width: 47.5%;
		margin-bottom: 40px;
	}
	.case-2col-equal img {
		width: 100%;
	}
	.case-2col-text {
		width: 66.5%;
	}
	.case-2col-img {
		width: 28.5%;
	}
	.case-2col-img img {
		width: 100%;
	}
}
@media only screen and (max-width: 640px) {
	.case {
		border: solid 1px #333333;
		margin-bottom: 40px;
	}
	.case:not(:last-of-type) {
		margin-bottom: 30px;
	}
	.case-title {
		padding: 25px;
		line-height: 1;
		font-weight: bold;
	}
	.case-title-subheading {
		font-size: 13px;
		margin-bottom: 15px;
		color: #BA5D00;
		font-weight: bold;
	}
	.case-title-subheading span {
		font-size: 28px;
		letter-spacing: -0.05em;
	}
	.case-title-heading {
		font-size: 22px;
		color: #333333;
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: -0.004em;
	}
	.case-inner {
		padding: 0 24px 30px;
	}
	.case-inner .read {
		font-size: 16px;
		line-height: 2;
		color: #333333;
	}
	.case-2col {
		margin-bottom: 30px;
	}
	.case-2col--column {
		display: flex;
		flex-direction: column;
		margin-bottom: 0;
	}
	.case-2col--column .case-2col-text {
		margin-bottom: 30px;
	}
	.case-2col--reverse {
		display: flex;
		flex-direction: column-reverse;
		margin-bottom: 0;
	}
	.case-2col--reverse .case-2col-img {
		margin-bottom: 30px;
	}
}

/* ======================================================
 * voice
====================================================== */
@media print, screen and (min-width: 641px) {
	.voice {
		display: flex;
		justify-content: space-between;
	}
	.voice-img {
		width: 21.5%;
	}
	.voice-img img {
		width: 100%;
	}
	.voice-text {
		width: 74%;
		font-size: 16px;
		line-height: 2;
		color: #333333;
		position: relative;
		border: 1px solid #333333;
		padding: 30px 44px;
	}
	.voice-text::before {
		content: "";
		display: block;
		position: absolute;
		top: 35px;
		left: -30px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 30px 30px 0;
		border-color: transparent #333333 transparent transparent;
		transform:rotate(90deg);
	}
	.voice-text::after {
		content: "";
		display: block;
		position: absolute;
		top: 36px;
		left: -40px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 40px 40px 0;
		border-color: transparent #fff transparent transparent;
		transform:rotate(90deg);
	}
}
@media only screen and (max-width: 640px) {
	.voice {
		display: flex;
		flex-direction: column-reverse
	}
	.voice-img {
		width: 60%;
		margin: 0 auto;
	}
	.voice-img img {
		width: 100%;
	}
	.voice-text {
		width: 100%;
		font-size: 16px;
		line-height: 1.7;
		color: #333333;
		position: relative;
		border: 1px solid #333333;
		padding: 30px 24px;
		margin-bottom: 30px;
	}
	.voice-text::before {
		content: "";
		display: block;
		position: absolute;
		bottom: -15px;
		left: calc(50% - 10px);
		margin-left: -5px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 15px 15px 0;
		border-color: transparent #333333 transparent transparent;
	}
	.voice-text::after {
		content: "";
		display: block;
		position: absolute;
		bottom: -19.5px;
		left: calc(50% - 9px);
		margin-left: -5px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 20px 20px 0;
		border-color: transparent #fff transparent transparent;
	}
}

/* ======================================================
 * flow
====================================================== */
@media print, screen and (min-width: 641px) {
	.flow {
		display: flex;
		margin-bottom: 50px;
	}
	.flow:nth-of-type(odd) {
		flex-direction: row-reverse;
	}
	.flow .flow-txt {
		width: 51%;
	}
	.flow .flow-img {
		width: 49%;
		max-width: 700px;
	}
	.flow .flow-img img {
		width: 100%;
	}
	.flow .flow-txt {
		display: flex;
		flex-direction: row-reverse;
	}
	.flow:nth-of-type(odd) .flow-txt {
		flex-direction: row;
	}
	.flow .flow-txt .flow-txt-inner {
		max-width: 512px;
		padding-left: 12px;
		width: 100%;
	}
	.flow:nth-of-type(odd) .flow-txt .flow-txt-inner {
		padding-left: 0;
		padding-right: 12px;
	}
	.flow .flow-txt .flow-title {
		display: flex;
		justify-content: space-between;
		padding-bottom: 11px;
		border-bottom: solid 2px #333333;
		margin-bottom: 30px;
		padding-right: 6%;
	}
	.flow:nth-of-type(odd) .flow-txt .flow-title {
		padding-left: 6%;
	}
	.flow .flow-txt .flow-title p {
		width: 70px;
		border-right: solid 1px #333333;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 32px;
		color: #BA5D00;
		font-weight: bold;
	}
	.flow .flow-txt .flow-title h3 {
		width: calc(100% - 90px);
		font-size: 20px;
		color: #333333;
		font-weight: bold;
		display: flex;
		align-items: center;
	}
	.flow .flow-txt .flow-detail {
		padding-right: 6%;
	}
	.flow:nth-of-type(odd) .flow-txt .flow-detail {
		padding-left: 6%;
	}
	.flow .flow-txt .flow-detail .notice {
		color: #666;
		font-size: 12px;
		display: inline-block;
		text-indent: -1em;
		margin-left: 1em;
	}
	.flow .flow-txt .flow-detail .notice:not(:last-of-type) {
		margin-bottom: 15px;
	}
	.flow .flow-img .notice {
		color: #666;
		font-size: 12px;
		display: inline-block;
		text-indent: -1rem;
    	margin-left: 1rem;
	}
	.flow .flow-txt .read {
		font-size: 16px;
		color: #333333;
		font-weight: bold;
		line-height: 1.4;
		margin-bottom: 25px;
	}
	.flow .flow-txt ul li {
		color: #333333;
		font-size: 16px;
		line-height: 1.4;
		margin-bottom: 15px;
		padding-left: 20px;
		position: relative;
	}
	.flow .flow-txt ul li::before {
		content: "";
		width: 6px;
		height: 6px;
		border-radius: 50%;
		position: absolute;
		background-color: #BA5D00;
		top: 7px;
		left: 6px;
	}
	.flow .flow-txt .flow-h4-wrap {
		margin-bottom: 30px;
	}
	.flow .flow-txt .flow-h4-wrap h4 {
		color: #333333;
		font-size: 20px;
		line-height: 1.4;
		margin-bottom: 15px;
		font-weight: bold;
	}
	.flow .flow-txt .flow-h4-wrap .read {
		margin-bottom: 15px;
	}
	.flow .supplement {
		background-color: #F2F2F2;
		padding: 5px 10px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		margin-top: 24px;
	}
	.flow .supplement-img {
		width: 60px;
	}
	.flow .supplement-img img {
		margin-bottom: 0;
	}
	.flow .supplement-text {
		width:  calc(100% - 70px);
		line-height: 1.5;
		font-size: 14px;
		color: #333333;
		font-weight: bold;
	}
}
@media only screen and (max-width: 640px) {
	.flow {
		margin-bottom: 50px;
	}
	.flow .flow-txt,
	.flow .flow-img {
		width: 100%;
	}
	.flow .flow-txt .flow-title {
		display: flex;
		justify-content: space-between;
		margin-bottom: 10px;
		padding: 0 12px;
	}
	.flow .flow-txt img {
		width: 100%;
		margin-bottom: 30px;
	}
	.flow .flow-txt .flow-detail {
		padding: 0 12px;
	}
	.flow .flow-txt .flow-title p {
		width: 60px;
		border-right: solid 1px #333333;
		font-size: 32px;
		color: #BA5D00;
		font-weight: bold;
		line-height: 1.4;
	}
	.flow .flow-txt .flow-title h3 {
		width: calc(100% - 75px);
		font-size: 20px;
		color: #333333;
		font-weight: bold;
		line-height: 1.4;
		margin-bottom: 5px;
		display: flex;
		align-items: center;
	}
	.flow-txt-inner .notice {
		color: #666;
		font-size: 12px;
		display: inline-block;
		text-indent: -1em;
		margin-left: 1em;
	}
	.flow .flow-detail .notice {
		color: #666;
		font-size: 12px;
		display: inline-block;
		text-indent: -1rem;
    	margin-left: 1rem;
	}
	.flow .flow-txt .read {
		font-size: 16px;
		color: #333333;
		font-weight: bold;
		line-height: 1.4;
		margin-bottom: 15px;
	}
	.flow .flow-txt ul li {
		color: #333333;
		font-size: 14px;
		line-height: 1.4;
		margin-bottom: 15px;
		padding-left: 20px;
		position: relative;
	}
	.flow .flow-txt ul li::before {
		content: "";
		width: 6px;
		height: 6px;
		border-radius: 50%;
		position: absolute;
		background-color: #BA5D00;
		top: 7px;
		left: 6px;
	}
	.flow .flow-txt .flow-h4-wrap {
		margin-bottom: 30px;
	}
	.flow .flow-txt .flow-h4-wrap h4 {
		color: #333333;
		font-size: 20px;
		line-height: 1.4;
		margin-bottom: 15px;
		font-weight: bold;
	}
	.flow .flow-txt .flow-h4-wrap .read {
		margin-bottom: 15px;
	}
	.flow .supplement {
		background-color: #F2F2F2;
		padding: 10px 15px 10px 5px;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-top: 20px;
	}
	.flow .supplement-img {
		width: 60px;
	}
	.flow .supplement-img img {
		margin-bottom: 0;
	}
	.flow .supplement-text {
		width:  calc(100% - 75px);
		line-height: 1.5;
		font-size: 14px;
		color: #333333;
		font-weight: bold;
	}
}
/* ======================================================
 * margin
====================================================== */
@media print, screen and (min-width: 641px) {
	.pc-mt--40 {
		margin-top: 40px !important;
	}
	.pc-mb--0 {
		margin-bottom: 0 !important;
	}
	.pc-mb--30 {
		margin-bottom: 30px !important;
	}
}
@media only screen and (max-width: 640px) {
	.sp-mb--30 {
		margin-bottom: 30px !important;
	}
}



/* ======================================================
 * cta
====================================================== */
@media print, screen and (min-width: 641px) {
	.kv .cta3 {
		padding: 30px 0 40px;
	}
	.kv .cta3-2col {
		display: flex;
		justify-content: space-between;
	}
	.kv .cta3-2col .cta3-2col-item {
		margin-bottom: 30px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.kv .cta3-2col .cta3-2col-item img {
		width: 100%;
	}
	.kv .cta3-2col .cta3-2col-item:first-of-type {
		width: 60%;
	}
	.kv .cta3-2col .cta3-2col-item:last-of-type {
		width: 35%;
	}
	.kv .cta3-2col .cta3-2col-item-img {
		width: 126px;
	}
	.kv .cta3-2col .cta3-2col-item-title {
		width: calc(100% - 136px);
	}
	.kv .cta3-2col .cta3-2col-item-title h2 {
		font-size: 22px;
		font-weight: bold;
		line-height: 1.5;
	}
	.kv .cta3-2col .cta3-2col-item-subTitle {
		font-size: 16px;
		margin-bottom: 10px;
		display: block;
	}
	.kv .cta3-2col .btn,
	.kv .cta3-2col .notice {
		width: 47.8%;
	}
	.kv .cta3-2col .notice {
		padding: 0;
		margin: 0;
	}
	.cta3 .inner .left {
		width: 630px;
		padding-left: 160px;
		margin-right: 0;
		padding-bottom: 23px;
	}
	.cta3 .inner .left h2 {
		margin-bottom: 15px;
		line-height: 1.3;
		margin-left: 0;
	}
	.cta3 .inner .right {
		width: 207px;
		padding-top: 40px;
		margin-left: 0;
	}
	.cta3 .inner .left h2::before,
	.cta3 .inner .left h2::after {
		display: none;
	}
	.cta3 .notice {
		padding-left: 160px;
	}
	.cta3 .notice li {
		text-indent: -1em;
		margin-left: 1em;
	}
	.cta3 .notice li:not(:last-of-type) {
		margin-bottom: 5px;
	}

	.cta3-2 .inner .left {
		width: 600px;
		padding-left: 130px;
	}
	.cta3-2 .inner .right {
		width: 240px;
		margin-left: 33px;
	}
	.cta3-2 .notice {
		padding-left: 130px;
	}
	.cta h2 {
		color: #333333;
		font-size: 22px;
		font-weight: bold;
		line-height: 1.4;
		margin-bottom: 15px;
	}
	.cta .contents .left .read p {
		font-size: 18px;
	}
	.cta02 {
		padding: 80px 0;
	}
	.cta02 .content {
		justify-content: center;
	}
	.cta02 .content .left {
		margin-right: 20px;
	}
	.cta02 .content .left,
	.cta02 .content .right {
		width: 40%;
		padding-top: 0;
	}
}
@media only screen and (max-width: 640px) {
	.kv .cta3 {
		padding: 40px 0 40px;
	}
	.kv .cta3-2col .cta3-2col-item {
		margin-bottom: 20px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.kv .cta3-2col .cta3-2col-item img {
		width: 100%;
	}
	.kv .cta3-2col .cta3-2col-item-img {
		width: 105px;
	}
	.kv .cta3-2col .cta3-2col-item-title {
		width: calc(100% - 120px);
	}
	.kv .cta3-2col .cta3-2col-item-title h2 {
		font-size: 18px;
		font-weight: bold;
		line-height: 1.5;
	}
	.kv .cta3-2col .cta3-2col-item-subTitle {
		font-size: 14px;
		margin-bottom: 10px;
		display: block;
	}
	.kv .cta3-2col .notice {
		margin-top: 20px;
		padding-bottom: 0;
	}
	.cta3 .inner .left img {
		width: 194px;
		padding-left: 0;
		margin: 0 auto 20px;
	}
	.cta3 .inner .left h2::before,
	.cta3 .inner .left h2::after {
		display: none;
	}
	.cta3 .notice {
		margin-top: 10px;
	}
	.cta3 .notice li {
		text-indent: -1em;
		margin-left: 1em;
	}
	.cta3 .notice li:not(:last-of-type) {
		margin-bottom: 5px;
	}

	.cta3-2 .inner .left img {
		width: 90%;
	}

	.cta h2 {
		color: #333333;
		font-size: 18px;
		font-weight: bold;
		line-height: 1.4;
		margin-bottom: 0;
	}
	.cta .contents .left .read p {
		font-size: 18px;
	}
	.cta02 {
		padding: 45px 0 80px;
		margin-bottom: 0;
	}
	.cta02 .content .right {
		margin-top: 0;
	}
	.cta02 .content .left {
		padding-top: 0;
	}
}

/* ======================================================
 * others
====================================================== */
.Snsber {
	margin-top: 0;
}
.gtm_syoukaiLP07_cvBtn {
	display: flex;
	align-items: center;
	justify-content: center;
}
.gtm_syoukaiLP07_cvBtn span {
	position: relative;
	display: block;
	padding-left: 60px;
	display: block;
	text-align: left;
	font-size: 19px;
}
.gtm_syoukaiLP07_cvBtn span::before {
	content: "";
	display: block;
	position: absolute;
	left: 5px;
	top: 50%;
	margin-top: -23.5px;
    width: 47px;
    height: 47px;
	background-size: 100%;
	background-repeat: no-repeat;
	background-image: url(/sumai_create/syoukai/images/index_2021/cv_icon_foc.png);
}
.gtm_syoukaiLP07_cvBtn:hover {
	text-decoration: underline;
	text-underline-offset: -2px;
}
@media print, screen and (min-width: 641px) {
	.tel a {
		pointer-events: none;
	}
}
@media screen and (max-width: 640px) {
	.gtm_syoukaiLP07_cvBtn {
		padding-left: 0;
	}
	.gtm_syoukaiLP07_cvBtn::after {
		right: 5px;
		background-size: contain;
		width: 30px;
		height: 11.5px;
	}
	.gtm_syoukaiLP07_cvBtn span {
		padding-left: 54px;
		font-size: 16px;
	}
	.gtm_syoukaiLP07_cvBtn04 span {
		font-size: 14px;
	}
	.gtm_syoukaiLP07_cvBtn span::before {
		left: 4px;
	}
	.btn.btn-orange::after {
		background-repeat: no-repeat;
	}
}

.gtm_syoukaiLP07_cvBtn .unicom_sumai_create_syoukai_index_kv_btn_subText {
	font-size: 80%;
	font-weight: normal;
	padding-left: 0;
	text-align: center;
	line-height: 1 !important;
}
.gtm_syoukaiLP07_cvBtn .unicom_sumai_create_syoukai_index_kv_btn_subText::before {
	display: none;
}

/*20230401*/
/* ======================================================
 * ballon
====================================================== */
@media print, screen and (min-width: 641px) {
    .syoukai_lp_ballon {
		display: none;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 5;
		width: 100%;
		padding: 15px 0;
		background-color: #fff;
		box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
        box-sizing: border-box;
    }
    .syoukai_lp_ballon_detail {
		width: 976px;
		margin: 0 auto;
		display: table;
    }
    .syoukai_lp_ballon_detail_read {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		line-height: 1.5;
    }
    .syoukai_lp_ballon_detail_read strong {
		font-size: 114%;
		font-weight: bold;
    }
    .syoukai_lp_ballon_btn {
		display: table-cell;
		width: 466px;
		text-align: center;
		vertical-align: middle;
    }
    .syoukai_lp_ballon_btn a {
		position: relative;
		display: block;
		padding: 13px 0;
		background-color: #ba5d00;
		font-size: 114%;
		font-weight: bold;
		line-height: 1;
		color: #fff;
    }
    .syoukai_lp_ballon_btn a:after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 20px;
		width: 52px;
		height: 10px;
		margin-top: -8px;
		background: url("/sumai_create/syoukai/common_2021/images/icn_arrow_next_wh.png") no-repeat 50% 50%;
		background-size: 52px 10px !important;
		transition: all 0.2s;
    }
    .syoukai_lp_ballon_btn a:hover {
		opacity: .7;
		transition: all 0.2s;
		cursor: pointer;
    }
    .syoukai_lp_ballon_btn a:hover:after {
		right: 10px;
    }
}
@media screen and (max-width: 640px) {
    .syoukai_lp_ballon {
		display: none;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 5;
		width: 100%;
		padding: 10px 15px;
		background-color: #fff;
		box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.2);
        box-sizing: border-box;
    }
    .syoukai_lp_ballon_detail_read {
		padding: 0 0 10px;
		text-align: center;
		vertical-align: middle;
		line-height: 1.5;
    }
    .syoukai_lp_ballon_detail_read strong {
		font-size: 86%;
		font-weight: bold;
    }
    .syoukai_lp_ballon_btn {
		text-align: center;
		vertical-align: middle;
    }
    .syoukai_lp_ballon_btn a {
		position: relative;
		display: block;
		padding: 6px 0;
		background-color: #ba5d00;
		font-size: 100%;
		font-weight: bold;
		line-height: 1;
		color: #fff;
    }
    .syoukai_lp_ballon_btn a:after {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 15px;
		width: 36px;
		height: 7px;
		margin-top: -4px;
		background: url("/sumai_create/syoukai/common_2021/images/icn_arrow_next_wh.png") no-repeat 50% 50%;
		background-size: 36px 7px !important;
		transition: all 0.2s;
    }
    .syoukai_lp_ballon_btn a:hover:after {
		right: 5px;
    }
}

.syoukai_lp_ballon_btn .syoukai_lp_cvBtn {
	text-decoration: none;
    padding-right: 40px;
}
.syoukai_lp_cvBtn {
	display: flex !important;
	align-items: center;
	justify-content: center;
}
.syoukai_lp_cvBtn:hover {
	text-decoration: underline;
	text-underline-offset: -2px;
}
.syoukai_lp_cvBtn span {
	position: relative;
	display: block;
	padding-left: 60px;
	text-align: left;
	line-height: 1.5;
}
.syoukai_lp_cvBtn span::before {
	content: "";
	display: block;
	position: absolute;
	left: 5px;
	top: 50%;
	margin-top: -23.5px;
	width: 47px;
	height: 47px;
	background-size: 100%;
	background-repeat: no-repeat;
	background-image: url(/sumai_create/syoukai/images/index_2021/cv_icon_foc.png);
}
@media screen and (max-width: 640px) {
	.syoukai_lp_cvBtn span {
		font-size: 14px;
		padding-left: 45px;
	}
	.syoukai_lp_cvBtn span::before {
		width: 36px;
		height: 36px;
		margin-top: -18px;
		left: 5px;
	}
}
.syoukai_lp_cvBtn .syoukai_lp_index_kv_btn_subText {
	font-size: 80%;
	font-weight: normal;
	padding-left: 0;
	text-align: center;
	line-height: 1 !important;
}
.syoukai_lp_cvBtn .syoukai_lp_index_kv_btn_subText::before {
	display: none;
}


/* ======================================================
 * kv-key
====================================================== */
.kv-key {
	max-width: 434px;
	width: 100%;
	background-color: rgb(255, 255, 255, .9);
	padding: 35px;
	outline: 1px solid #333333;
	outline-offset: -7px;
	margin: 0;
}
.kv-key .pc {
	width: 100%;
	height: auto;
	padding-bottom: 30px;
}
.kv .kv-key .btn {
	padding: 0 55px 0 0;
}
.gtm_syoukaiLP07_cvBtn span {
	font-size: 17px;
}
.gtm_syoukaiLP07_cvBtn span .unicom_sumai_create_syoukai_index_kv_btn_subText {
	font-size: 12px;
}
.kv .notice{
	padding-left: 0;
}
.kv .kv-key .btn:hover:after{
	transition: all 0.2s;
	right: 10px;
}
@media screen and (max-width: 640px) {
	.wrap-kv-key {
		width: calc(100% - 30px);
        max-width: 375px;
        margin: auto;
        padding: 0;
	}
	.kv-key {
		padding: 20px 20px 30px;
		outline-offset: -5px;
		margin-top: -40px;
		position: relative;
	}
	.kv-key .sp {
		width: 100%;
		height: auto;
		padding: 0 5px 25px;
	}
	.kv .kv-key .btn {
		padding: 0 40px 0 0;
	}
	.kv .kv-key .btn:hover:after{
		right: 5px;
	}
	.gtm_syoukaiLP07_cvBtn span {
		font-size: 14px;
	}
}
@media screen and (max-width: 360px) {
	.gtm_syoukaiLP07_cvBtn span {
		font-size: 11px;
	}
	.gtm_syoukaiLP07_cvBtn span .unicom_sumai_create_syoukai_index_kv_btn_subText {
		font-size: 10px;
	}
}


/* ======================================================
 * case
====================================================== */
.case-2col .case-2col-equal--arrow{
	position: relative;
}
.case-2col .case-2col-equal--arrow::after{
	position: absolute;
	content: "";
    display: inline-block;
    width: 26px;
    height: 40px;
    background-image: url(/sumai_create/syoukai/lp/07/images/voice_arrow.svg);
    background-size: contain;
    vertical-align: middle;
    background-repeat: no-repeat;
	top: 50%;
	right: -35.5px;
	transform: translateY(-50%);
}
@media screen and (max-width: 640px) {
	.case-title {
		position: relative;
		padding: 40px;
		line-height: 1;
		font-weight: bold;
		border-bottom: 1px solid #333333;
	}
	.case-title::before {
		content: "";
		display: block;
		position: absolute;
		bottom: -16px;
		left: 50%;
		margin-left: -10px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 15px 15px 0;
		border-color: transparent #333333 transparent transparent;
	}
	.case-title::after {
		content: "";
		display: block;
		position: absolute;
		bottom: -20px;
		left: 50%;
		margin-left: -10px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 20px 20px 0;
		border-color: transparent #fff transparent transparent;
	}
	.case-2col .case-2col-equal:first-of-type {
		padding: 32px 0 20px;
	}
	.case-2col .case-2col-equal:first-of-type.case-2col-equal--arrow{
		padding-bottom: 33px;
	}
	.case-2col .case-2col-equal--arrow::after{
		width: 19px;
		height: 28px;
		top: auto;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%) translateY(-10%) rotate(90deg);
	}
}


/* ======================================================
 * footer
====================================================== */
@media print, screen and (min-width: 641px) {
	.holdings-footer__main__in{
		padding-bottom: 110px;
	}
}
@media screen and (max-width: 640px) {
	.holdings-footer__main__in{
		padding-bottom: 120px;
	}
}