@charset "UTF-8";

.container{
	width: 100%;
	padding: 0;
	text-align: center;
	margin-bottom: 30px;
}

/*--セクション--*/

.content{
	display: inline-block;
	width: 95%;
	position: relative;
	max-width: 1020px;
	text-align: center;
	margin-top: 50px;
}

.content p{
	font-size: 18px;
	padding: 20px auto;
	text-align: left;
}
@media only screen and (max-width: 767px){
.content p{
	font-size: 16px;
	padding: 20px auto;}}

/*--メインビジュアルエリア--*/

.mv-area{
	display: block;
  position: relative;
	background-color: #fff;
	max-width: 1320px;
	width: 100%;
	height: 750px;
	font-size: 0;
}

#mv_walk02{
	width: 100%;
  background: url("/images/walk/03_common/mv_walk.jpg")no-repeat;
	background-position: center;
	margin: 0 auto 0;
}

.mv-textarea{
	display: inline-block;
	position: absolute;
	max-width: 580px;
	width: 100%;
	height:auto;
	left: 0px;
	bottom: 60px;
}
.mv-name{
	width: 100%;
	background: #265BA8;
	color: #fff;
	font-size: 24px;
	text-align: left;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 40%;
}
.mv-copy{
	width: 100%;
	background: #333;
	color: #fff;
	font-size: 40px;
	line-height: 1.4;
	text-align: left;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 40%;
}
.mv-tagline{
	width: 100%;
	font-size: 26px;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	padding-top: 40px;
	padding-left: 10%;
}

img.mv-insole{
	position: absolute;
	margin-top: -380px;
	margin-left:-48%;
	width: 230px;
	z-index: 999;
}
@media screen and (max-width: 767px){
.mv-area{
	height: 500px;
	width: auto;}
#mv_walk02{
	width: 100%;
  background: url("/images/walk/03_common/mv_walk.jpg")no-repeat;
	background-position: center;}
.mv-textarea{
	max-width: 380px;
	width: 100%;
	height:auto;
	left: 0px;
	bottom: 50px;}
.mv-name{
	width: 100%;
	font-size: 16px;
	text-align: left;
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 46%;}
.mv-copy{
	font-size: 26px;
	line-height: 1.3em;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 40%;}
.mv-tagline{
	width: 100%;
	font-size: 18px;
	padding-top: 10px;
	padding-left: 10%;}
img.mv-insole{
	position: absolute;
	margin-top: -220px;
	margin-left:-48%;
	width: 140px;
	z-index: 999;
}}

.box-announce{
	display: block;
	padding: 20px;
	font-size: 24px;
	font-weight: 600;
	color: #fff;
	background: rgb(0,30,87);
background: linear-gradient(180deg, rgba(0,30,87,1) 0%, rgba(38,91,168,1) 81%);
}
@media screen and (max-width: 767px){
.box-announce{
	padding: 15px 10px;
	font-size: 20px;
}}

h2.under-g{
	display: inline-block;
	font-size: 46px;
	font-weight: 400! important;
	line-height: 1.4;
	border-bottom: solid 5px #EDC300;
	margin-bottom: 50px;
}
@media screen and (max-width: 767px){
h2.under-g{
	font-size: 26px;
	line-height: 1.4em;
	border-bottom: solid 3px #EDC300;
	margin-bottom: 30px;
}}


/*-- こんなお悩みありませんか？ --*/ 
.flex-container_nayami{
	display: flex;
	justify-content: space-around;
	flex-wrap:wrap;
	margin-bottom: 50px;
}
.flex-item06{
	border:solid 3px #CCC;
	background: #fff;
	color: #333;
	margin-bottom: 20px;
	padding: 1em;
	flex-basis: 30%;
	border-radius: 10px;
}

.flex-item06 dl{
	margin-bottom: 10px;
	font-size: 1em;
}

.flex-item06 dt img{
	width:100px;
	margin-bottom: 15px;
}

.flex-item06 dd{
	line-height: 1.2;
	font-size: 1em;
}
.flex-item06 dd span{
	line-height: 1.6;
	font-size: 1.4em;
	font-weight: 600;
}

@media screen and (max-width:767px){
.flex-item06{
flex-basis: 32%;
padding: 10px;}
.flex-item06 dd{
line-height: 1.4;
font-size: 12px;
padding: 0;}
.flex-item06 dd span{
font-size: 14px;
}}

/*-- 看護師イメージとフキダシ --*/ 

.fuki{
display: inline-block;
position: relative;
background-color: #D7EBF1;
border: 2px solid #fff;
width: 680px;
border-radius: 15px;
}

#nurse{
padding: 50px 80px;
margin-bottom: 50px;
}

@media only screen and (max-width: 767px){
#nurse.fuki{
max-width: 90%;
padding: 30px;
margin-bottom: 100px;
}}

.wrap_doc-chat{
margin-right: 120px;
}
@media only screen and (max-width: 767px){
.wrap_doc-chat{
margin-right: 0;
margin-bottom: 90px;
}}

img.male-doc{
position: absolute;
width:150px;
right: 3%;
top: 30%;
}
@media only screen and (max-width: 767px){
img.male-doc{
width:160px;
top: 95%;
left: 50%;
transform: translate(-50%, -50%);
}}

h4.doc-heading{
font-size: 24px;
font-weight: 500;
}
@media screen and (max-width:767px){
h4.doc-heading{
font-size: 20px;
}}


/*-- 年間で歩く歩数 --*/ 

.content-w800{
	display:inline-block;
	padding: 0;
	max-width: 800px;
}

.flex-steps {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-around;
 }

.steps-item {
  padding: 15px;
  width: 48%;
}

.steps-item img{
  width: 100%;
}

/*-- 歩き方でさらにこんな症状も --*/ 
.flex-container_foot{
	display: flex;
	justify-content: space-around;
	flex-wrap:wrap;
	max-width: 680px;
	margin: 20px auto 50px;
}
.flex-item08{
	background: #265BA8;
	margin-bottom: 20px;
	flex-basis: 31%;
}

.flex-item08 dl{
	margin-bottom: 10px;
	font-size: 1em;
}

.flex-item08 dt img{
	width:100%;
	margin-bottom: 15px;
}

.flex-item08 dd{
	line-height: 1.2em;
	font-size: 1em;
	font-weight: 600;
	color:#fff;
	padding-bottom: 20px
}
.flex-item08 dd span{
	line-height: 1.6em;
	font-size: 1.4em;
	font-weight: 600;
}

@media screen and (max-width:767px){
	.flex-item08{
		flex-basis: 31%;
		margin: 10px auto 20px;}
.flex-item08 dd{
	line-height: 1.2em;
	font-size: 14px;}
.flex-item08 dd span{
	font-size: 18px;
}}

/*-- 歩き方の良し悪しはどこで決まる --*/

.box-blue{
  display:inline-block;
	position: relative;
	background: #fff;
	width: 90%;
	max-width: 680px;
	padding:30px 30px 100px;
	border: 2px solid #ccc;
	border-radius: 15px;
	text-align: center;
	margin-bottom: 90px;
}

.box-blue img{
	width: 100%;
}

.box-blue{
	text-align: center;
}

p.center{
display:inline-block;
text-align:center !important;
margin-bottom: 30px;
}

img.doc-ido{
position:absolute;
width: 160px;
top: 100%;
left: 50%;
transform: translate(-50%, -50%);
}

/*-- 歩き方を改善して悩みを解消するには  --*/
img.nayami{
	width: 100%;
}
@media screen and (max-width:767px){
img.nayami{
	display: none;
}}

img.nayami-woman{
 max-width: 160px;
 margin: 20px auto 0px;
}
@media screen and (min-width:768px){
img.nayami-woman{
	display: none;
}}

.nayami-sp{
display: inline-block;
background: #fff;
border: 1px solid #333;
border-radius: 16px;
padding: 15px 20px 15px 40px;
font-size: 16px;
text-align: left;
margin-bottom: 40px;
}

.nayami-sp ul li{
list-style-type: disc;
list-style-position: outside;
}

/*-- すべての歩きで健康をつくろう --*/

.walker-image{
width: 100%;
}
.walker-image img{
max-width: 860px;
margin:10px auto 10px;
}
@media screen and (max-width:767px){
.walker-image img{
width: 100%;
}}

.content-w860{
	display: inline-block;
	max-width: 860px;
	text-align: center;
	margin:30px auto 20px;
}

.content-w860 img{
	width: 100%;
	margin:30px auto 10px;
}

@media screen and (max-width:767px){
.content-w860{
	width: 90%;
	margin:10px auto 10px;}
.content-w860 img{
	width: 86%;
	margin:10px auto 10px;
}}

.container_type{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	max-width: 860px;
	width: 98%;
	margin: 0 auto;
}

.type-item01,
.type-item02{
	margin-bottom: 20px;
	flex-basis: 30%;
}

.type-item01 dt img,
.type-item02 dt img{
	width:100%;
	margin: 30px auto 10px;
}

@media screen and (max-width:767px){
.type-item01{
	margin-bottom: 20px;
	flex-basis: 90%;}
.type-item01 dt img{
	width: 50%;
	margin: 10px auto 10px;}
.type-item02{
	margin-bottom: 20px;
	flex-basis: 45%;}
.type-item02 dt img{
	margin: 10px auto 10px;
}}

.content-w680{
	display: inline-block;
	max-width: 680px;
	width: 100%;
	margin:30px auto;
}

/*-- 悩みの改善＋アルファ --*/ 

.alpha {
 padding: 40px;
}

.content_wrap ul li {
 box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.2);
 border-radius: 10px;
 padding: 30px;
 background: #fff;
 display: flex;
}
@media screen and (max-width: 767px) {
.content_wrap ul li {
 flex-direction: column;
 padding: 30px 10px 30px 20px;
}}
.content_wrap ul li h4{
 font-size: 24px;
 font-weight: 400;
 line-height:1.4em;
}
@media screen and (max-width: 767px) {
.content_wrap ul li h4{
 font-size: 20px;
}}
.content_wrap ul li p{
 font-size: 20px;
 margin-left:30px;
 line-height: 1.4em
}
@media screen and (max-width: 767px) {
.content_wrap ul li p{
 font-size: 18px;
 margin-left:0px;
}}
.content_wrap ul li .harea {
 width: 150px;
 margin-right: 30px;
 margin-top: 18px;
}
@media screen and (max-width: 767px) {
.content_wrap ul li .harea {
 text-align: center;
 width: 100%;
 margin-right: 0px;
 margin-bottom: 15px;
 margin-top: 0px;
}}
.content_wrap ul li .tarea02 {
 flex: 1 1 auto;
 padding-top: 10px;
 text-align: left;
 padding-left:10px;
 border-left: 1px dashed #333;
}
@media screen and (max-width: 767px) {
.content_wrap ul li .tarea02 {
 padding-top:20px;
 padding-left:0px;
 border-top: 1px dashed #333;
 border-left: 5px;
}}

/*-- チェックボックス付きリスト02 --*/
.check-list02 {
	text-align: left;
  }

.check-list02 p + p {
  margin-top: 10px;
}

.check-list02 p {
  position: relative;
  padding-left: 2em;
	font-weight: 600;
}

.check-list02 p::before {
  position: absolute;
  left: 0;
  content: "";
  display: block;
  width: 1.2em;
  height: 1.2em;
  border: 1px solid #333;
}

.check-list02 p::after {
  position: absolute;
  left: 0.2em;
  top: 0.1em;
  content: "";
  display: block;
  width: 1em;
  height: 0.4em;
  border-left: 4px solid #5AB43F;
  border-bottom: 4px solid #5AB43F;
  transform: rotate(-45deg);
}

.box-jikken{
display: inline-block;
max-width:760px;
border: 1px solid #333;
padding:20px;
background: #fff;
margin:20px auto;
}

.wrap-jikken{
display:flex;
}

.box-jikken img{
max-width: 120px;
margin-right: 30px;
}

.tarea03{
text-align: left;
}

.tarea03 h4{
display: inline-block;
padding:5px 20px;
background: #333;
font-size: 18px;
font-weight: 400;
color: #fff;
}
@media screen and (max-width: 767px){
.tarea03 h4{
	padding: 3px 20px;
	margin-bottom: 3px;
	font-size: 16px;}
.box-jikken img{
margin-right: 20px;
}}

.box-jikken p{
font-size: 16px;
line-height: 1.4em;
margin: 10px auto;
}
@media screen and (max-width: 767px){
.box-jikken p{
font-size: 14px;
line-height: 1.3em;
margin: 0px auto 5px;
}}

/*- お客様の声 -*/

.swiper {
width: 100%;
max-width: 800px;
height: 600px;
}

.voice-container{
display: inline-block;
text-align: center;
width: 100%;
}

.voice_walk{
max-width: 700px;
width:100%;
position: relative;
background: #fff;
margin: 10px auto;
height: 582px;
overflow: auto;
}

img.voice-user{
position: absolute;
width: 100px;
border: 5px solid #fff;
border-radius: 54px;
top: 120px;
left: 50%;
transform: translate(-50%, -50%);
}

.voice_walk dt{
padding: 30px 20px 20px;
height: 120px;
text-align: center;
font-size: 19px;
font-weight: 600;
color: #fff;
background: #265BA8;
}

.voice_walk dd{
padding: 20px 40px 30px;
margin: 30px auto;
text-align: center;
color: #333;
background: #fff;
}
.voice-profile{
font-size: 14px;
margin-bottom: 10px;
}
.voice-comment01{
font-size: 20px;
font-weight: 600;
margin-bottom: 20px;
padding: 10px 0;
border-bottom: 4px dotted goldenrod;
}
.voice-comment02{
font-size: 16px;
text-align: left;
line-height: 1.4em;
}

@media screen and (max-width : 375px ){
.swiper {
height: 350px;}
.voice_walk{
margin: 0 auto 30px;
width: 96%;
height: 342px;}
.voice_walk dt{
height: 100px;
font-size: 16px;}
.voice_walk dd{
padding: 38px 20px 20px;}
.voice-comment01{
font-size: 18px;
margin: 10px auto;
}}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction{
  top:750px;
	bottom: auto;
}
@media screen and (max-width : 767px ){
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction{
  top:460px;
	bottom: auto;
}}


/*-- 月々定額プラン --*/ 

.fuki02{
display: inline-block;
position: relative;
background-color: #fff;
border: 2px solid #ccc;
border-radius: 15px;
padding: 50px 50px 120px 50px;
margin-bottom: 90px;
max-width:760px;
}

@media only screen and (max-width: 767px){
fuki02{
max-width: 90%;
padding: 30px;
}}

img.clerk{
position: absolute;
width:160px;
top: 100%;
left: 50%;
transform: translate(-50%, -50%);
}

h4.clerk-heading{
font-size: 22px;
font-weight: 500;
}
@media screen and (max-width:767px){
h4.clerk-heading{
font-size: 20px;
}}

/*-- チェックボックス付きリスト --*/
.check-list {
  display: inline-block;
	text-align: left;
  }

.check-list li + li {
  margin-top: 10px;
}

.check-list li {
  position: relative;
  line-height: 1.2;
  padding-left: 2em;
	font-weight:600;
}

.check-list li::before {
  position: absolute;
  left: 0;
  content: "";
  display: block;
  width: 1.2em;
  height: 1.2em;
  border: 1px solid #333;
}

.check-list li::after {
  position: absolute;
  left: 0.2em;
  top: 0.1em;
  content: "";
  display: block;
  width: 1em;
  height: 0.4em;
  border-left: 4px solid #5AB43F;
  border-bottom: 4px solid #5AB43F;
  transform: rotate(-45deg);
}

/*-- 靴に合わせて選べるインソール --*/

.insole-thin{
	max-width: 800px;
	width: 80%;
	margin: 20px auto 60px;
}

@media only screen and (max-width: 767px){
.insole-thin{
	width: 96%;
	margin: 10px auto 60px;
}}

/*-- 2種類のインソールの違い --*/

.insole-type{
	width: 200px;
	height: auto;
	margin: 0px auto 20px;
}

@media only screen and (max-width: 767px){
.insole-type{
	width: 150px;
	height: auto;
}}

.difference-box {
  display: flex;
  border: solid 2px #95C6C6;
  width: 100%;
	align-items: center;
	margin-bottom: 50px;
}
.box_left-img {
	display: inline-block;
  text-align: center;
	padding: 15px;
	width: 250px;
}
.box_left-img img {
  max-height: 150px;
	width: auto;
	margin: 10px auto 10px;
}
.box_right-text{
	display: inline-block;
	border-left: solid 2px #95C6C6;
	padding: 15px 15px;
	width: auto;
}

@media only screen and (max-width: 767px){
.difference-box {
  flex-direction: column;
	width: 100%;
	margin-bottom: 20px;}
.box_left-img {
	width: 100%;
	padding: 20px auto 20px;}
.box_left-img img{
	max-height: 120px;
	width: auto;}
.box_right-text{
	border-left: none;
	border-top: solid 2px #95C6C6;
}}

@media only screen and (max-width: 767px){
.img_insole-icons{
max-width: 700px;
width: 90%;
margin: 0px auto 50px;
}
.img_insole-icons img{
width: 100%;
}}

/*-- チェックボックス付きリスト03 --*/
.check-list03 {
  display: block;
	text-align: left;
  }

.check-list03 li + li {
  margin-top: 10px;
}

.check-list03 li {
  position: relative;
  line-height: 1.2;
  padding-left: 2em;
}

.check-list03 li::before {
  position: absolute;
  left: 0;
  content: "";
  display: block;
  width: 1.2em;
  height: 1.2em;
  border: 1px solid #333;
}

.check-list03 li::after {
  position: absolute;
  left: 0.2em;
  top: 0.1em;
  content: "";
  display: block;
  width: 1em;
  height: 0.4em;
  border-left: 4px solid #5AB43F;
  border-bottom: 4px solid #5AB43F;
  transform: rotate(-45deg);
}

/*-- 注意書き --*/
.box-attent,
.box-attent-half{
  display: inline-block;
  position: relative;
  padding: 20px 25px;
  text-align: left;
	line-height:1.4em;
  color: #333;
	border: 2px solid #0075a9;
  border-radius: 0 10px 10px 10px;
  background: #D7EBF1;
	width:90%;
}

.box-attent:before,
.box-attent-half:before{
  font-size: 16px;
  font-size: 1.6rem;
  position: absolute;
  top: -36px;
  left: -2px;
  height: 36px;
  padding: 8px 1em;
  color: #fff;
  border-radius: 10px 10px 0 0;
  background: #265BA8;
}

.box-attent:before{
  content: '月々定額プランご解約について';
}

.box-attent-half:before{
  content: '極薄ハーフインソールの注意点';
}

.box-attent ul li,
.box-attent-half ul li{
	list-style: disc outside!important;
	margin-left:20px;
}
@media screen and (max-width:767px){
.box-attent ul li,
.box-attent-half ul li{
	font-size:16px;}
.box-attent,
.box-attent-half{
  padding: 20px 20px;
}}

.box-attent p.t-small{
font-size: 14px;
margin:10px auto;
}

/*-- ラージバナー --*/

.bg-bnr-blue{
background: rgb(77,182,211);
background: linear-gradient(166deg, rgba(77,182,211,1) 38%, rgba(1,154,223,1) 83%);
}

.bg-bnr-orange{
background: rgb(252,186,2);
background: linear-gradient(166deg, rgba(252,186,2,1) 38%, rgba(255,161,0,1) 77%);
}

/*-- ラージバナー --*/

.bnr02-large{
	position: relative;
	max-width: 1100px;
	width: 100%;
	height: 450px;
	margin: 0 auto;
}

/* --- 左：人物写真 --- */
.bnr02-photo01{
	position: absolute;
	left: 0; /* 横位置：0で左端 */
	top: 0; /* 縦位置：Y軸0からスタート */
	height: 100%;
	width: auto;
	filter: drop-shadow(-13px 0px 5px rgba(108,108,108,0.6));
	z-index: 1;
}

.bnr02-photo02{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: auto;
	filter: drop-shadow(-13px 3px 5px rgba(108,108,108,0.6));
	z-index: 1;
}

/* --- 右：インソール画像 --- */
.bnr02-insole{
	position: absolute;
	right: 70px;
	top: 50%;
	transform: translateY(-50%);
	width: 180px;
	height: auto;
}

/* --- 中央：コピー＋情報ボックス--- */
.bnr02-body{
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	transform: translateY(-50%);
	text-align: center;
	z-index: 2;
}

.bnr02-heading{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	margin: 0 0 28px;
}

.bnr02-copy{
	font-size: 32px;
	font-weight: 700;
	color: #fff;
	line-height: 1.4;
	filter: drop-shadow(-2px 2px 2px rgba(108,108,108,0.9));
}

.bnr02-info-box{
	max-width: 400px;
	width: 96%;
	margin: 0 auto;
	background-color: rgb(255 255 255 / 50%);
	border: 1px solid rgba(0,0,0,0.12);
	border-radius: 6px;
	padding: 24px 30px;
}

.bnr02-detail{
	font-size: 15px;
	font-weight: 600;
	color: #333;
	line-height: 1.6;
	text-align: center;
	margin-bottom: 16px;
}
.bnr02-detail strong{
	display: inline-block;
	font-size: 20px;
	margin-bottom: 6px;
}

.bnr02-btn-area{
	display: flex;
	justify-content: center;
	gap: 12px;
}

.bnr02-btn{
	display: inline-block;
	width: 160px;
	background-color: #E3007F;
	color: #fff;
	border: 2px solid #fff;
	border-radius: 5px;
	font-size: 15px;
	font-weight: 600;
	text-align: center;
	padding: 12px 20px;
	white-space: nowrap;
	text-decoration: none;
}

/* --- 注釈：右下 --- */
.bnr02-note{
	position: absolute;
	right: 16px;
	bottom: 12px;
	font-size: 12px;
	color: #333;
	text-align: right;
}

/* ===== スマホ ===== */

@media screen and (max-width:767px){
.bnr02-large{
	max-width: 500px;
}

.bnr02-body{
	position: relative;
	top: auto;
	z-index: 3;
	transform: none;
	padding-top: 270px;
}

/* 左：人物写真 */
.bnr02-photo01{
	position: absolute;
	left: 5%;
	top: 0;
	height: 280px;
	width: auto;
	filter: none;
}

.bnr02-photo02{
	position: absolute;
	left: 5%;
	top: 0;
	height: 280px;
	width: auto;
	filter: none;
}

.bnr02-heading{
	position: absolute;
	top: 40px;
	right: 20px;
	left: auto;
	align-items: flex-end;
	gap: 8px;
	margin: 0;
	z-index: 2;
}

.bnr02-copy{
	background: #000;
	color: #fff;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.4;
	padding: 5px 10px;
}

/* 右中央：インソール画像 */
.bnr02-insole{
	top: 132px;
	right: 15%;
	transform: none;
	width: 86px;
}

/* 情報ボックス：全幅 */
.bnr02-info-box{
	width: 92%;
	max-width: 360px;
	margin: 0 auto;
	padding: 12px 24px 16px;
}

.bnr02-detail{
	font-size: 14px;
	margin-bottom: 12px;
}
.bnr02-detail strong{
	display: inline-block;
	font-size: 16px;
	margin-bottom: 6px;
}

.bnr02-btn-area{
	gap: 10px;
}

.bnr02-btn{
	flex: 1 1 0;
	text-align: center;
	font-size: 14px;
	padding: 12px 8px;
}

.bnr02-note{
	position: static;
	margin: 10px auto 0;
	text-align: center;
}}

.note-small{
	font-weight: 600px;
	font-size:12px;
	padding: 5px 15px;
	text-align: right;
}