@charset "utf-8";


body {
	font-family: 'Noto Sans JP', sans-serif ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Verdana;
	font-size: 16px;
	line-height: 1.5;
	text-align: center;
	color: #1a1a1a;
	font-weight: 500;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
}
* {
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

a {
	color: #000;
	outline: none;
	text-decoration: none;
	-webkit-transition: .1s;
	-o-transition: .1s;
	transition: .1s;
}
img{
	margin: auto;
	max-width: 100%;
	height: auto;
	width:auto;
}


input,
textarea{
}
input[type=radio], input[type=checkbox] {
	margin:0 5px 0 0;
	width: auto;
}
small {
	font-size: 75%;
}
.mt50 {
	margin-top: 50px;
}
.onlysp,
.spOnly{
	display: none;
}
.none{
	display:none;
}
.contArea {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
}
.container {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}
.clrYellow {
	color: #f6bf1e!important;
}
.fo-bebas {
	font-family: bebas-neue-pro, sans-serif;
	font-weight: 400;
	font-style: normal;
}

/*header-----------------*/
#header {
	padding: 15px 0;
}
.header {
	max-width: 1200px;
}
.hLogo h1 img {
	min-height: 48px;
	display: block;
}
img[src*="hlogo02.png"] ,
img[src*="htel.png"] {
	height: auto;
	max-height: 20px;
	display: block;
}
.hLogo h1 {
	display: flex;
	text-align: left;
}
.hLogo h1 .txt {
	font-size: clamp(13px,.95vw,16px);
	font-weight: 700;
	white-space: nowrap;
	padding-top: 0;
}
.header .contactNav {
	width: 76%;
}
.hLogo {
	width: 30%;
}
.hLogo p {
	padding-top: 5px;
	margin-left: 15px;
}
.hTel {
	font-size: 11px;
	text-align: right;
	margin-right: 15px;
}
.hTel img {
	margin-bottom: 1px;
	max-height: 20px;
}
.contactBtn {
	display: inline-block;
}
.contactBtn a {
	display: block;
	background: #f2bb1e;
	padding: 12px 30px;
}
.contactBtn a:hover {
	opacity: .8;
}

.contactBtn img {
	max-height: 17px;
	display: block;
	margin: auto;
}

/*contents----------------*/
article > section {
	padding: 60px 0;
}
h1 {
	font-size: 30px;
	font-weight: 600;
}
.mainVisual {
	padding: 40px 0;
	background: url("../img/secondopinion/mv_bg.png") center center no-repeat;
	background-size: cover;
}
.mvCont {
	max-width: 1020px;
	position: relative;
	padding-bottom: 40px;
}
.mvBtn {
	display: block;
	max-width: 46.5686274%;
	position: absolute;
	left: 3%;
	bottom: 0;
	z-index: 10
}
#attracts h1 {
	margin-bottom: 40px;
}
.attractsWrap {
	width: 90%;
	position: relative;
	padding-left: 40px;
}
.attractsWrap:nth-of-type(even) {
	padding: 0 40px 0 0;
	margin-top: 45px;
}
.attractsBox {
	background: #eaecea;
	padding: 35px 5% 35px 80px;
}
.attractsWrap:nth-of-type(even) .attractsBox {
	padding-right: 80px;
	padding-left: 5%; 
}
.pointNum {
	width: 100px;
	height: 100px;
	background: #efb81e;
	line-height: .7;
	font-weight: 800;
	position: absolute;
	left: 0;
	top: -20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-line-pack: center;
	align-content: center;
}
.attractsWrap:nth-of-type(even) .pointNum {
	left: inherit;
	right: 0;
}
.pointNum small {
	font-size: 16px;
	display: block;
	width: 100%;
	margin-bottom: 7px;
	letter-spacing: .05em;
	text-indent: .05em;
}
.pointNum p {
	width: 100%;
	font-size: 66px;
}
.attractsWrap:first-of-type figure {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
}
.attractsBox dl {
	text-align: left;
	width: 60%;
}
.attractsBox dt {
	font-size: 36px;
	font-weight: 600;
	line-height: 1.4;
	margin-bottom: 15px;
}
.attractsBox figure {
	width: 37.5%;
}
img[src*="/point02_img.png"] {
	max-height: 187px;
}
.txtborder {
	background: -webkit-gradient(linear,left bottom, left top,color-stop(12%, #b50005),color-stop(12%, transparent));
	background: -ms-linear-gradient(bottom,#b50005 12%,transparent 12%);
	background: -o-linear-gradient(bottom,#b50005 12%,transparent 12%);
	background: linear-gradient(to top,#b50005 12%,transparent 12%);
}
#service {
	padding: 0;
}
.worryWrap {
	background: #eaecea url("../img/secondopinion/nayami_bg.png") bottom center no-repeat;
	background-size: cover;
	padding: 55px 0 80px;
	color: #fff;
}
.worryTtl {
	margin-bottom: 20px;
}
.worryTtl > p {
	color: #f2bb1e;
	font-size: 20px;
	font-weight: 600;
	display: inline-block;
	padding: 0 10px 28px;
	margin-bottom: 10px;
	background: url("../img/secondopinion/ttl_arrow.png") center bottom no-repeat;
}
.worry {
	width: 32%;
	background: #1a1a1a;
	padding: 6px;
	color: #000;
	border-radius: 9px;
	margin-bottom: 10px;
	box-shadow: 1.5px 2px 0 #1a1a1a;
}
.worry:not(:nth-of-type(3n)) {
	margin-right: 2%;
}
.worry dl {
	background: #fff;
	height: 100%;
	border-radius: 5px;
	padding: 15px 5%;
}
.worryNum {
	background: #1a1a1a;
	border-radius: 50%;
	width: 66px;
	min-width: 66px;
	height: 66px;
	min-height: 66px;
	color: #fff;
	font-size: 30px;
	line-height: .7;
	font-weight: 600;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-line-pack: center;
	align-content: center;
}
.worryNum > p {
	font-weight: 800;
}
.worryNum small {
	display: block;
	width: 100%;
	font-size: 14px;
	margin-bottom: 4px;
	line-height: 1;
}
.worry dd {
	width: 72%;
	padding-left: 2%;
	text-align: left;
}
.bg {
	background:url("../img/secondopinion/service_bg.png") left -5% top,url("../img/secondopinion/service_bg.png") right top 12%;
	background-size: 30% auto,30% auto;
	background-color: #eaecea;
	background-repeat: repeat-y;
}
.tryWrap {
	padding: 35px 0 90px;
}
.tryTtl {
	margin-bottom: 15px;
}
.trysub {
	background: #1a1a1a;
	color: #fff;
	font-size: 25px;
	line-height: 1;
	padding: 5px 10px 8px;
	display: inline-block;
	position: relative;
	margin-bottom: 15px;
	font-weight: 600;
	letter-spacing: .07em;
	text-indent: .07em;
}
.trysub::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 99.9%;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 6px 0 6px;
	border-color: #1a1a1a transparent transparent transparent;
}
.trysub+p {
	font-size: 20px;
	font-weight: 600;
}
.tryTtl h1 {
	display: inline;
	font-size: 46px;
	line-height: 1.4;
	background: -webkit-gradient(linear,left bottom, left top,color-stop(4%, transparent),color-stop(4%, #f9bf11),color-stop(20%, #f9bf11),color-stop(20%, transparent));
	background: -ms-linear-gradient(bottom,transparent 4%,#f9bf11 4%,#f9bf11 20%,transparent 20%);
	background: -o-linear-gradient(bottom,transparent 4%,#f9bf11 4%,#f9bf11 20%,transparent 20%);
	background: linear-gradient(to top,transparent 4%,#f9bf11 4%,#f9bf11 20%,transparent 20%);
}
.tryTtl + p {
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 10px;
}
.try01Box {
	background: #f2bb1e;
	width: 48.5%;
}
.try01Box figure {
	background: #fff;
	padding-top: 30px;
}
.try01Box p {
	font-size: 18px;
	font-weight: 600;
	padding: 10px;
}
.try01Wrap {
	background: url("../img/secondopinion/arrow.png") center bottom no-repeat;
	padding-bottom: 85px;
	margin-bottom: 15px;
}
.tryWrap h2 {
	font-size: 30px;
	font-weight: 600;
	margin-bottom: 20px;
}
.try02Wrap {
	background: #fff;
	padding: 22px;
	margin-bottom: 60px;
}
.try02Box {
	background: #f2bb1e;
	width: 48%;
	position: relative;
	padding: 25px 2% 15px;
	font-size: 18px;
	font-weight: 600;
	border-radius: 6px;
}
.try02Box .pointNum {
	width: 68px;
	height: 68px;
	background: #1a1a1a;
	color: #fff;
	top: -9px;
	left: -7px;
}
.try02Box figure {
	max-width: 85%;
	margin: 0 auto 20px;
}
.pointNum small {
	font-size: 14px;
}
.try02Box .pointNum > p {
	font-size: 44px;
}
.subsc {
	padding: 90px 0 70px;
}
.subsc .container {
	max-width: 870px;
}
.subscBox > p {
	font-size: 30px;
	font-weight: 600;
	margin-bottom: 50px;
}
.subscBox figcaption {
	text-align: left;
	padding-top: 10px;
}
#serviceCont {
	background: #f2bb1e url("../img/secondopinion/serbice_bot_bg.png") top center no-repeat;
	background-size: auto 339px;
	padding: 120px 0 80px;
}
.scWrap {
	background: #f2bb1e;
	padding: 0 6px 6px;
}
.scWrap h1 {
	padding: 12px 5%;
	font-weight: 800;
}
.scBox {
	background: #fff;
	padding: 35px 0;
}
.scBox h2 {
	font-size: 36px;
	line-height: 1.4;
	margin-bottom: 30px;
}
.scCont > div:last-of-type {
	border: none;
}
.scCont > div {
	width: 33.33333%;
	padding: 0 3%;
	border-right: 1px solid #d6d9d6;
}
.scCont > div p {
	text-align: left;
	padding-top: 30px;
	padding: 30px 10px 0;
}
.blankBtn > a {
	display: block;
	background: #1a1a1a url("../img/secondopinion/blank.png") right 20px center no-repeat;
	background-size: auto 15px;
	color: #fff;
	padding: 10px 35px 10px 30px;
}
#online {
	padding: 90px 0 0 0;
}
#online .d-flex > * {
	width: 50%;
}
#online dl {
	text-align: left;
	padding-left: 5%;
}
#online dt {
	font-size: 30px;
	font-weight: 600;
	margin-bottom: 25px;
}
.bnrTxt {
	background: url("../img/secondopinion/ttl_l.png") left bottom,url("../img/secondopinion/ttl_r.png") right bottom;
	background-repeat: no-repeat;
	display: inline-block;
	padding: 20px 65px 0;
	font-size: 30px;
	font-weight: 800;
	margin-bottom: 40px;
}
#flow {
	padding-top: 90px;
}
.contTtlBox {
	margin-bottom: 30px;
}
.contTtl {
	font-size: 28px;
	line-height: .7;
	font-weight: 800;
	position: relative;
	margin-bottom: 45px;
}
.contTtl::before {
	content: "";
	display: block;
	height: 4px;
	width: 100%;
	background: #1a1a1a;
	position: absolute;
	left: 0;
	right: 0;
	top: 48%;
}
.contTtl > span {
	background: #fff;
	display: inline-block;
	padding: 0 20px;
	z-index: 10;
	position: relative;
}
#flow h1 {
	margin-bottom: 20px;
}
#flow h1+p {
	margin-bottom: 70px;
}
.flowWrap {
	background: #f2bb1e;
}
.flowBox {
	width: 28%;
	padding: 0 0 40px;
	position: relative;
}
.flowBox:not(:last-of-type) {
	width: 36%;
	background: url("../img/secondopinion/flowarrow.png") right center no-repeat;
	padding-right: 50px;
}
.flowBox h2 {
	margin-top: -20px;
	margin-bottom: 55px;
}
.flowBox h2  span {
	background: #1a1a1a;
	color: #fff;
	display: inline-block;
	font-size: 22px;
	line-height: 1.2;
	padding: 5px 40px 8px;
}
.flowBox figure {
	height: 137px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	margin-bottom: 20px;
}
.flowBox figure img {
	margin: 0;
}
#schedule {
	background: url("../img/secondopinion/schedule.png") top center no-repeat;
	background-size: cover;
}
#schedule .contTtlBox {
	color: #fff;
}
#schedule .contTtl::before,#schedule .contTtl::after {
	content: "";
	position: absolute;
	background: #fff;
	height: 4px;
	top: 48%;
	width: 43%;
}
#schedule .contTtl::before {
	right: inherit;
}
#schedule .contTtl::after {
	right: 0;
}
#schedule .contTtl span {
	background: none;
}
#schedule h1 {
	position: relative;
	display: inline-block;
	margin-bottom: 20px;
}
#schedule h1::after {
	content: "";
	display: block;
	background: url("../img/secondopinion/schedule_sub.png") top center no-repeat;
	background-size: contain;
	width: 76px;
	height: 76px;
	position: absolute;
	right: -100px;
	top: -15px;
}
.scheduleWrap {
	background: #fff;
	padding: 40px 5%;
}
.scheduleWrap dl {
	background: #f2bb1e;
	padding: 0 4px 4px;
}
.scheduleWrap dt {
	font-size: 22px;
	font-weight: 700;
	padding: 10px;
}
.scheduleWrap dd {
	padding: 12px 2%;
	background: #fff;
}
.scheduleWrap dl:not(:last-of-type) {
	margin-bottom: 30px;
	position: relative;
}
.scheduleWrap dl:not(:last-of-type)::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 19px 0 19px;
	border-color: #1a1a1a transparent transparent transparent;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -21px;
	margin: auto;
}
#price {
	background: #f2bb1e;
}
#price .contTtl > span {
	background: #f2bb1e;
}
#price .subscBox {
	background: #fff;
	padding: 50px 5% 40px;
}
#service02 {
	padding: 80px 0;
}
.serviceTtl > p {
	background: url("../img/secondopinion/ttl_l02.png") left bottom,url("../img/secondopinion/ttl_r02.png") right bottom;
	background-repeat: no-repeat;
	display: inline-block;
	padding: 20px 65px 0;
	font-size: 24px;
	font-weight: 800;
	color: #b50005;
	margin-bottom: 25px;
}
.serviceTtl h1 {
	font-size: 46px;
	line-height: 1.4;
}
.serviceTtl .txtborder {
	background: -webkit-gradient(linear,left bottom, left top,color-stop(15%, #f9bf11),color-stop(15%, transparent));
	background: -ms-linear-gradient(bottom,transparent 6%,#f9bf11 6%,#f9bf11 20%,transparent 20%);
	background: -o-linear-gradient(bottom,transparent 6%,#f9bf11 6%,#f9bf11 20%,transparent 20%);
	background: linear-gradient(to top,transparent 6%,#f9bf11 6%,#f9bf11 20%,transparent 20%);
}
.service02Wrap {
	margin: 50px 0 20px;
}
.service02Wrap > p {
	width: 48.4%;
	text-align: left;
	font-size: 46px;
	font-weight: 600;
	padding-top: 4%;
}
.service02Wrap > p small {
	font-size: 65%;
}
.service02Wrap > figure {
	width: 51.6%;
}
.s02ul {
	border: 3px solid #fff;
	padding: 30px 2%;
	margin-bottom: 70px;
}
.s02ul li {
	width: 29%;
}
.s02ul li:not(:first-of-type) {
	margin-left: 5%;
}
.service02Btn > p {
	background: url("../img/secondopinion/ttl_l.png") left bottom,url("../img/secondopinion/ttl_r.png") right bottom;
	background-repeat: no-repeat;
	display: inline-block;
	padding: 0 65px;
	font-size: 24px;
	font-weight: 800;
	margin-bottom: 20px;

}
.service02Btn >a {
	display: block;
	max-width: 410px;
	color: #fff;
	background: #b50005 url("../img/secondopinion/btnarrow.png") right 70px center no-repeat;
	background-size: auto 30px;
	margin: 0 auto;
	font-size: 28px;
	padding: 30px 60px 30px 10px;

}
.service02Btn >a:hover {
	opacity: .8;
}
.policyTtl {
	font-size: 115%;
	margin: 30px auto 20px;
}
.privacy {
	border: 1px solid #ccc;
	padding: 20px 5%;
	text-align: left;
}
.thxBox .container {
	border: 1px solid #333;
	padding: 30px 5%;
}
.thxBox a {
	display: inline-block;
	margin-top: 15px;
    background: #f2bb1e;
    padding: 12px 30px;
}


/*footer-------------------------------*/
.spFix {
	display: none;
}
.fix {
	text-align: right;
	position: fixed;
	top: 10%;
	right: 5px;
}
.fix p {
	margin-bottom: 10px;
}
footer {
	border-top: 1px solid #d6d9d6;
	padding: 50px 0 20px;
}
.fLogo img {
	max-height: 77px;
	display: block;
	margin: 0 auto 15px;
}

/*ieハック*/
@media all and (-ms-high-contrast: none) {
}

/*********************************/
/* タブレット用のスタイル記述 */
/*********************************/

/*********************************/
/* スマートフォン用のスタイル記述 */
/*********************************/
@media screen and (max-width: 620px) {

	body {
		padding-top: 0;
		font-size: 12px;
		min-width: 320px;
	}
	article > section {
		padding: 40px 0;
	}
	h1 {
		font-size: 18px;
	}
	/*header----------------*/
	#header {
		padding: 10px 0;
	}
	.headRight {
		display: none;
	}
	.hLogo {
		width: 100%;
		padding-right: 30px;
	}
	.hLogo h1 .txt {
		font-size: 3.3vw;
		font-size: clamp(12px,3.3vw,12px);
	}
	.hLogo h1 img {
    height: 35px;
    min-height: 35px;
	}
	img[src*="hlogo02.png"]  {
		max-height: 12px;
	}
	.mainVisual {
		padding: 20px 0;
	}
	.mvCont {
		padding-bottom: 3.5%;
	}
	.pointNum ,.try02Box .pointNum{
		z-index: 10;
		width: auto;
		height: auto;
		padding: 10px 10px 8px;
		flex-wrap: nowrap;
	}
	.pointNum p {
		font-size: 35px;
	}
	.pointNum small {
		font-size: 18px;
		margin-right: 2px;
	}
	.try02Box .pointNum p {
		font-size: 28px;
	}
	.try02Box .pointNum small {
		font-size: 14px;
		margin-right: 2px;
	}
	.attractsWrap {
		padding-left: 5%;
		width: 100%;
	}
	.attractsWrap:nth-of-type(even) {
		padding: 0 5% 0 0;
	}
	.attractsBox,.attractsWrap:nth-of-type(even) .attractsBox {
		padding: 30px 8% 30px;
		display: block;
		position: relative;
	}
	.attractsBox dl {
		width: 100%;
	}
	.attractsBox dt {
		font-size: 15px;
		padding-right: 33%;
		margin-bottom: 15px;
	}
	.attractsBox figure {
		position: absolute;
		right: 5%;
		top: 30px;
		width: 30%;
		max-width: 85px;
	}
	.attractsWrap:nth-of-type(even) .attractsBox figure {
		right: inherit;
		left: 5%;
		top: 10px;
	}
	.attractsWrap:nth-of-type(even) .attractsBox dt {
		padding-right: 0;
		padding-left: 35%;
	}
	.worryWrap {
		padding: 40px 0 60px;
	}
	.worryTtl {
		margin-bottom: 40px;
	}
	.worryTtl > p {
		font-size: 16px;
		background-size: auto 15px;
		padding-bottom: 18px;
	}
	.worryList {
		justify-content: flex-start;
	}
	.worry,.worry:not(:nth-of-type(3n)) {
		width: 49%;
		margin-right: 2%;
		margin-bottom: 30px;
		position: relative;
		padding: 3px;
	}
	.worry:not(:nth-of-type(odd)) {
		margin-right: 0;
	}
	.worryNum {
		position: absolute;
		left: -2%;
		top: -15px;
		min-width: 45px;
		min-height: 45px;
		height: 45px;
		width: 45px;
		font-size: 22px;
	}
	.worryNum small {
		font-size: 10px;
	}
	.worry dl {
		padding-top: 32px;
		display: block;
		min-height: 101px;
	}
	.worry dd {
		padding-left: 0;
		width: 100%;
	}
	.trysub {
		font-size: 16px;
	}
	.tryWrap {
		padding: 40px 0;
	}
	.trysub+p {
		font-size: 15px;
		margin-bottom: 10px;
	}
	.tryTtl {
		margin-bottom: 30px;
	}
	.tryTtl h1 {
		font-size: 20px;
	}
	.tryTtl + p {
		font-size: 16px;
	}
	.try01Box p {
		font-size: 12px;
		text-align: left;
	}
	.try01Box figure {
		padding: 10px 10px 0;
	}
	.try01Wrap {
		padding-bottom: 50px;
		background-size: auto 30px;
	}
	.tryWrap h2 {
		font-size: 16px;
	}
	.try02Wrap {
		padding: 30px 5% 20px;
		margin-bottom: 30px;
	}
	.try02Box {
		font-size: 12px;
		padding-top: 35px;
	}
	.try02Box figure {
		max-width: 100%;
		margin-bottom: 10px;
	}
	.try02Box > p {
		text-align: left;
	}
	.try02Box .pointNum {
		top: -15px;
	}
	.bg {
		background-size: 36% auto,36% auto;
	}
	.subsc {
		padding: 40px 0 10px;
	}
	.scBox {
		padding: 30px 5%;
	}
	.subscBox > p {
		font-size: 18px;
		margin-bottom: 30px;
	}
	.subscBox .d-flex {
		display: block;
	}
	.subscBox figure {
		width: 82%;
		margin: 0 auto 30px;
		max-width: 245px;
	}
	#serviceCont {
		background-size: auto 32vw;
		padding: 23vw 0 40px;
	}
	.scBox h2 {
		font-size: 15px;
	}
	.scCont {
		display: block;
	}
	.scCont > div {
		width: 100%;
		display: flex;
		padding: 0;
		margin-bottom: 20px;
		padding-bottom: 20px;
		border-right: none;
		border-bottom: 1px solid #d6d9d6;
	}
	.scCont figure {
		width: 45%;
	}
	.scCont > div > div {
		width: 55%;
		padding: 0 0 0 4%;
	}
	.scCont > div p {
		padding: 0;
	}
	.blankBtn > a {
		padding: 10px 17px 10px 10px;
		background-size: auto 9px;
		background-position: center right 7px;
		margin-top: 10px;
		font-size: 10px;
		text-align: center;
	}
	.scCont > div:last-of-type {
		padding-bottom: 0;
		margin-bottom: 0;
	}
	#online {
		padding: 40px 0;
	}
	#online .d-flex {
		display: block;
	}
	#online .d-flex > figure {
		width: 65%;
		margin: 0 auto;
	}
	#online .d-flex > dl {
		width: 100%;
		padding-left: 0;
	}
	#online dt {
		font-size: 18px;
		text-align: center;
		margin-bottom: 15px;
	}
	#online dd {
		text-align: center;
		font-size: 12px;
	}
	.bnrWrap {
		padding: 30px 0;
	}
	.bnrTxt {
		padding: 0 30px;
		font-size: 4vw;
		background-size: auto 30px;
		margin-bottom: 10px;
	}
	#flow {
		padding-top: 40px;
	}
	.contTtl {
		margin-bottom: 20px;
	}
	.contTtlBox h1 + p {
		font-size: 14px;
	}
	#flow h1+p {
		margin-bottom: 30px;
	}
	#flow h1 {
		margin-bottom: 15px;
	}
	.flowWrap {
		display: block;
	}
	.flowBox,.flowBox:not(:last-of-type) {
		width: 100%;
		padding: 20px 5%;
		background: none;
		display: flex;
		flex-wrap: wrap;
		position: relative;
	}
	.flowBox:not(:last-of-type) {
		margin-bottom: 10px;
	}
	.flowBox:not(:last-of-type)::after {
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 16px 30px 0 30px;
		border-color: #ffffff transparent transparent transparent;
		position: absolute;
		left: 0;
		right: 0;
		bottom: -17px;
		margin: auto;
	}
	.flowBox h2 {
		margin: 0 auto 20px;
		width: 100%;
	}
	.flowBox h2 span {
		font-size: 12px;
	}
	.flowBox figure {
		height: auto;
		width: 45%;
		margin-bottom: 0;
	}
	.flowBox figure + p {
		text-align: left;
		width: 55%;
		padding-left: 2%;
	}
	.flowBox figure img {
		max-height: 90px;
	}
	.flowBox:last-of-type figure {
		width: 30%;
	}
	.flowBox:last-of-type figure + p {
		width: 70%;
	}
	#schedule .contTtl::before, #schedule .contTtl::after {
		width: 31%;
	}
	#schedule h1 {
		width: 100%;
		padding: 0 18%;
	}
	#schedule h1::after {
		width: 18%;
		right: 0;
	}
	.scheduleWrap dt {
		font-size: 14px;
	}
	#price .subscBox {
		padding: 30px 5% 1px;
	}
	#price .subscBox figure {
		width: 80%;
	}
	.serviceTtl > p {
		padding: 0 30px;
    font-size: 4.4vw;
    background-size: auto 30px;
    margin-bottom: 10px;
	}
	.serviceTtl h1 {
		font-size: 20px;
	}
	#service02 {
		padding: 40px 0;
	}
	.service02Wrap {
		flex-wrap: wrap;
		margin: 30px auto 30px;
	}
	.service02Wrap figure {
		order: 0;
		width: 100%;
	}
	.service02Wrap > p {
		width: 100%;
		order: 1;
		text-align: center;
		font-size: 18px;
	}
	.s02ul {
		flex-wrap: wrap;
		padding: 20px 2% 10px;
		margin-bottom: 50px;
	}
	.s02ul li,.s02ul li:not(:first-of-type) {
		width: 38%;
		margin-bottom: 10px;
		margin-left: 0;
	}
	.s02ul li:first-of-type {
		margin-right: 5%;
	}
	.service02Btn > p {
		padding: 0 30px;
    font-size: 18px;
    background-size: auto 30px;
    margin-bottom: 10px;
	}
	.service02Btn >a {
		font-size: 18px;
		text-align: center;
		padding: 15px 30px 15px 30px;
		background-size: auto 22px;
		background-position: center right 40px;
	}
	footer {
		padding-bottom: 18vw;
	}
	.fLogo img {
		max-height: 60px;
	}
	.spFix {
    width: 100%;
    position: fixed;
    right: 0;
    left: 0;
    bottom: 0;
    display: block;
    z-index: 800;
	}
	.spFix ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	}
	.thxBox p {
		text-align: left;
	}
	.fix {
		display: none;
	}
	
	
	
	
	
	
	
	
	
	
	
	
/*全体レイアウト
------------------------------------------------*/
.onlypc{display:none;}
.onlysp{display: block;}

}















