@charset "UTF-8";

body{
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	overflow-x: hidden;
}
/*****************************************************
汎用
******************************************************/
.pc{
	display: block;
}
.sp{
	display: none;
}
.inner{
	width: 1200px;
	margin: 0 auto;
}
.flex{
	display: flex;
}
.flex_w{
	display: flex;
	flex-wrap: wrap;
}
.justify-sb{
	justify-content: space-between;
}
.justify-c{
	justify-content: center;
}
.align_c{
	align-items: center;
}
.flex_item02{
	width: calc( 100% / 2);
}
.pin{
	position: relative;
	width: auto;
}
.mt-20{
	margin-top: 20px;
}
.mb_10{
	margin-bottom: 10px;
}
.pl_20{
	padding-left: 20px;
}
.pr_20{
	padding-right: 20px;
}

@media (max-width: 768px){
	.pc{
		display: none;
	}
	.sp{
		display: block;
	 }
	 .inner{
		/* width: 90%; */
		width: calc(100% - 40px);
	}
	img{
		width: 100%;
	}
	.mt-20{
		margin-top: 4%;
	}
	#wrapper{
	  overflow: hidden;
	}
}

/*****************************************************
.hdcp
******************************************************/

.hdcp {
	background: #233C82;
	height: 100px;
	text-align: center;
	font-weight: bold;
	font-size: 37px;
	color: #FFFF00;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 30px 0;

}
@media (max-width: 768px){
	.hdcp {
	height: 76px;
	text-align: center;
	font-weight: bold;
	font-size: 19px;
	color: #FFFF00;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0;
}

}

/*****************************************************
.vh_area
******************************************************/
/*.vh_area{
	max-height: 100vh;
}*/
header{
	padding: 115px 0 120px 0;
}
#mainVis img{
	margin: auto;
}
#titleBelt {
	color: #fff;
	font-weight: bold;
	text-align: center;
	background: #233c82;
}
.vh_area .img_area{
	height: 310px;
	margin: 0 auto;
	background: #00aeff;
	position: relative;
}
.vh_area .pin img{
	position: absolute;
	top: -140px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
@media (min-width: 769px){
	#titleBelt {
		font-size: 26px;
		padding: 14px 0 10px;
	}
	.vh_area .img_area{
		min-width: 1200px;
	}
	header{
		min-width: 1200px;
	}
}
@media (max-width: 768px){
	#titleBelt {
		font-size: 16px;
		padding: 9px 0 5px;
	}
	.vh_area{
		max-height: 80vh;
	}
	header{
		padding: 41px 0 90px 0;
	}
	.vh_area .img_area {
		/* height: 100px; */
		height: 35vw;
	}
	#mainVis{
		margin: 0 auto;
	}
	.vh_area .pin img{
		top: -90px;
		left: 48%;
	}
}
/* @media (max-width: 400px){
	header{
		padding: 37px 0 125px 0;
	}
} */

/*****************************************************
#intro
******************************************************/
#intro {
	padding: 0 0 65px;
	background: #00aeff;
}
#intro .text_item{
	color: #fff;
	font-size: 18px;
	line-height: 38px;
	text-align: center;
	font-weight: bold;
	padding: 30px 40px;
}

#intro .bg {
	background: url(../image/intro_bg.png) no-repeat;
	width: 850px;
	height: 228px;
	margin: 0 auto;
}
#intro .text {
	width: 790px;
	margin: 0 auto;
	text-align: center;
	padding: 50px 0 0;
}

#intro .text p {
	font-size: 21px;
	font-weight: bold;
	color: #00aeff;
	line-height: 32px;
	margin-bottom: 20px;
}
#intro .text p.sup {
	font-size: 12px;
	width: 700px;
	text-align: left;
	margin: 0 auto;
	line-height: 20px;
}

@media (min-width: 769px){
	#intro {
		min-width: 1200px;
	}    
}
@media (max-width: 768px){
	#intro{
		/* height: 70vh;*/
		padding: 16vw 0 28px;
	}
	#intro .text_item{
		width: auto;
		font-size: 12px;
		line-height: 22px;
		padding: 14px 15px 12px;
		position: relative;
	}
	#intro .text_item::before{
		position: absolute;
		content: "";
		background: url(../image/sp/intro_img02.png) no-repeat;
		width: 55px;
		height: 92px;
		bottom: 0;
		left: -27px;
		background-size: cover;
	}
	#intro .text_item::after{
		position: absolute;
		content: "";
		background: url(../image/sp/intro_img03.png) no-repeat;
		width: 75px;
		height: 70px;
		top: -3px;
		right: -10px;
		background-size: cover;
	}

	#intro .bg {
		background: url(../image/sp/intro_bg.png) no-repeat;
		background-size:cover;
		width: 280px;
		height: 203px;
		margin: 12px auto 0;
	}
	#intro .text {
		width: 250px;
		margin: 0 auto;
		text-align: center;
		padding: 5% 0 0;
		letter-spacing:-1.4px;
	}
	#intro .text p:first-of-type{
	  padding-bottom: 5px;
	  margin-bottom: 0;
	}
	#intro .text p {
		font-size: 12px;
		font-weight: bold;
		color: #00aeff;
		line-height: 20px;
	}
	#intro .text p.sup {
		font-size: 10px;
		width: 250px;
		text-align: center;
		margin: 0 auto;
		line-height: 14px;
		padding-left:1em;
		text-indent:-1em;
		letter-spacing: 0;
	}
}
@media (max-width: 400px){
	#intro{
		height: auto;
		padding: 15px 0 28px;
	}
}

/*****************************************************
#linkarea
******************************************************/
#linkarea{
	padding: 78px 0 70px;
}
#linkarea .img_box{
	width: 1000px;
	margin: 0 auto 26px;
}
#linkarea .linkarea_flex{
	display: flex;
	justify-content: center;
	width: 1000px;
	margin: 0 auto 50px;
	flex-wrap: wrap;
}
#linkarea .linkarea_flex .img_item{
  width: calc((100% - 17px) / 3); 
}
#linkarea .linkarea_flex .img_item a{
	opacity: 1;
}
#linkarea .linkarea_flex .img_item a:hover{
	opacity: 0.6;
	transition: 0.1s;
}
#linkarea .linkarea_flex .img_item:nth-of-type(-n+3){
  margin-bottom: 19px;
}
#linkarea p{
	font-size: 20px;
	line-height: 38px;
	font-weight: bold;
	text-align: center;
	color: #233C82;
}
.linkarea_ttl01{
	width: 250px;
	margin: 0 auto 35px;
}
@media (min-width: 769px){
	#linkarea{
		min-width: 1200px;
	}
}
@media (max-width: 768px){
	#linkarea{
		padding: 42px 0 34px;
	}
	#linkarea .img_box{
		width: 100%;
		margin: 0 auto 10px;
	}
	#linkarea .linkarea_flex{
		flex-wrap: wrap;
		width: 100%;
		margin: 0 auto 20px;
		justify-content: space-between;
	}
	#linkarea .linkarea_flex .img_item{
		width: calc(96% / 2);
		margin-bottom: 10px;
	}
	.linkarea_ttl01{
		width: 126px;
		margin: 0 auto 12px;
	}
	#linkarea .linkarea_flex .img_item:nth-of-type(-n+3){
		margin-bottom: 9px;
	  }      
	#linkarea p {
		display: flex;
		justify-content: center;
		font-size: 14px;
		line-height: 22px;
		text-align: justify;
		font-weight: bold;
		color: #233C82;
	}
}
/*****************************************************
#kenshin
******************************************************/
#kenshin{
	padding: 68px 0 114px;
	background: #00aeff;
}
#kenshin .kenshin_ttl01{
	width: 518px;
	margin: 0 auto 100px;
}
#kenshin h2.kenshin_ttl02{
	width: 375px;
	margin: 0 auto 20px;
}
#kenshin .kenshin_ttl02{
	width: 514px;
	margin: 0 auto 20px;
}
#kenshin #kenshin_go{
	width: 377px;
	margin: 0 auto 30px;
}
#kenshin .kenshin_ttl02_02{
	width: 183px;
	margin: 0 auto 20px;
}
#kenshin .tag{
	width: 192px;
	margin: 0 auto 30px;
}
#kenshin .tag02{
	width: 211px;
	margin: 0 auto 30px;
}
#kenshin .kenshin_text01{
	font-size: 20px;
	line-height: 38px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	/*margin-bottom: 109px;*/
	position: relative;
	margin-bottom: 120px;
}
#kenshin .kenshin_text02{
	font-size: 20px;
	line-height: 38px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	margin-bottom: 130px;
	position: relative;
}
#kenshin .kenshin_sup{
	font-size: 16px;
	/*line-height: 38px;*/
	font-weight: bold;
	color: #fff;
	text-align: center;
	margin-bottom: 8px;
	position: relative;
}
#kenshin .kenshin_sup_ed{
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	margin-bottom: 90px;
	position: relative;
}

#kenshin .movie_area::before{
	position: absolute;
	content: "";
	background: url(../image/kenshin_img01.png) no-repeat;
	width: 220px;
	height: 570px;
	right: -276px;
}
#kenshin .movie_area.area02::before{
	position: absolute;
	content: "";
	background: url(../image/kenshin_img04.png) no-repeat;
	width: 195px;
	height: 608px;
	right: -250px;
}
#kenshin .Whiteboard_bg{
	background: #fff;
	border-radius: 40px;
	padding: 60px 100px;
	position: relative;
}
#kenshin .Whiteboard_bg::before{
	position: absolute;
	content: "";
	background: #00aeff;
	border-radius: 50%;
	width: 22px;
	height: 22px;
	top: 32px;
	left: 34px;
}
#kenshin .Whiteboard_bg::after{
	position: absolute;
	content: "";
	background: #00aeff;
	border-radius: 50%;
	width: 22px;
	height: 22px;
	top: 32px;
	right: 34px;
}
#kenshin .Whiteboard_bg .attention {
	color: #00aeff;
	font-weight: bold;
	text-align: center;
}
#kenshin .reason_ttl01{
	width: 390px;
	margin: 0 auto 30px;
}
#kenshin .movie_area{
	position: relative;
}
#kenshin .bottom_pin{
	position: relative;
	width: 1000px;
	margin: 0 auto;
}
#kenshin .bottom_pin::before{
	position: absolute;
	content: "";
	background: #00aeff;
	border-radius: 50%;
	width: 22px;
	height: 22px;
	bottom: 32px;
	left: 34px;
	z-index: 99;
}
#kenshin .bottom_pin::after{
	position: absolute;
	content: "";
	background: #00aeff;
	border-radius: 50%;
	width: 22px;
	height: 22px;
	bottom: 32px;
	right: 34px;
}
#kenshin .flex_item03{
	width: calc( 100% / 2);
	text-align: center;
	font-size: 12px;
	color: #233C82;
	font-weight: bold;
}
#kenshin .flex_item03 img{
	margin: 0 auto;
}
#kenshin .flex_item03 .kenshin_imgintxt01{
	line-height: 24px;
}
#kenshin .flex_item03 .kenshin_imgintxt01 .kenshin-height{
	line-height: 1;
}
#kenshin .flex_item03 .kenshin_imgintxt01 .kenshin_note{
	display: inline;
}
#kenshin .flex_item03 .kenshin_imgintxt01 .kenshin_note02{
	margin-top: 10px;
}
#kenshin .flex_item03 .kenshin_imgintxt01 span{
	display: block;
	font-size: 18px;
	line-height: 1.5;
}
#kenshin .flex_item03 .kenshin_imgintxt01 img{
	margin: 3px auto 6px;
}
#kenshin .flex_item03:first-of-type .kenshin_imgintxt01 img:first-of-type{
  width: 258px;
}
#kenshin .flex_item03:first-of-type .kenshin_imgintxt01 img:nth-of-type(3){
  width: 260px;
}
#kenshin .flex_item03:first-of-type .kenshin_imgintxt01 img:nth-of-type(5){
  width: 196px;
}
#kenshin .flex_item03:first-of-type .kenshin_imgintxt01 img:nth-of-type(7){
  width: 286px;
}
#kenshin .flex_item03:nth-of-type(2) .kenshin_imgintxt01 img{
  width: 259px;
}

#kenshin .kenshin_txt05{
  font-size: 16px;
  width: 125%;
  margin-left: -9%;
}
#kenshin .kenshin-sp_txt05{
  margin-top: 20px;
  letter-spacing: -.08em;
}
#kenshin .kenshin-sp_txt06{
  letter-spacing: -.13em;
}
#kenshin .flex_item03 .mb_09{
	display: block;
	margin-bottom: -15px !important;
}
#kenshin .flex_item03 .mb-10{
	margin-bottom: 10px;
}
#kenshin .Navyboard_bg{
	background: #233C82;
	border-radius: 10px;
	position: relative;
	width: 276px;
	padding: 17px 20px;
	margin: 10px auto 15px;
	color: #fff;
	font-size: 12px;
	line-height: 20px;
	text-align: left;
}
#kenshin .Navyboard_bg::before{
	position: absolute;
	content: "";
	background: #fff;
	border-radius: 50%;
	width: 10px;
	height: 10px;
	top: 9px;
	left: 7px;
	z-index: 999;
}
#kenshin .Navyboard_bg::after{
	position: absolute;
	content: "";
	background: #fff;
	border-radius: 50%;
	width: 10px;
	height: 10px;
	top: 9px;
	right: 7px;
}
#kenshin .bottom_pin-n{
	width: 276px;
	position: relative;
	margin: 0 auto;
}
#kenshin .bottom_pin-n::before{
	position: absolute;
	content: "";
	background: #fff;
	border-radius: 50%;
	width: 10px;
	height: 10px;
	bottom: 9px;
	left: 7px;
	z-index: 999;
}
#kenshin .bottom_pin-n::after{
	position: absolute;
	content: "";
	background: #fff;
	border-radius: 50%;
	width: 10px;
	height: 10px;
	bottom: 9px;
	right: 7px;
}
#kenshin .annotation_box{
	margin-top: 33px;
	font-size: 12px;
	line-height: 1.818;
}
@media (min-width: 769px){
	#kenshin .movie_area{
		width: 563px;
		height: 318px;
		background: #fff;
		margin: 0 auto 36px;
		padding: 150px 210px;
	}
	#kenshin .movie_area_cs{
		width: 565px;
		margin: 0 auto 21px;
	}
	#kenshin .movie_area iframe {
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		position: absolute;
	}    
	#kenshin .movie_area::before{
		top: -40px;
	}
	#kenshin .movie_area.area02::before{
		top: -70px;
	}
	#kenshin{
		min-width: 1200px;
	}
	#kenshin .Whiteboard_bg .attention {
		margin-top: 35px;
		line-height: 30px;
	}
}
@media (max-width: 768px){
	#kenshin{
		padding: 38px 0 76px;
	}
	#kenshin .kenshin_ttl01{
		width: calc(100% - 60px);
		margin: 0 auto 22px;
	}
	#kenshin .movie_area{
		/* width: 100%;
		height: 26vh;
		padding: 11.5vh 12vw; */
		margin: 0 auto 18px;
	}
	#kenshin .movie_area_cs{
		width: 90%;
		margin: 0 auto 21px;
	}
	#kenshin .movie_area img{
		width: 50%;
		margin: 0 auto;
	}
	#kenshin .movie_area iframe {
		width: 100%;
		min-width: 27vw;
		height: 100%;
		min-height: 50vw;
	}
	#kenshin .reason_ttl01{
		width: 80%;
		margin: 0 auto 22px;
	}
	#kenshin h2.kenshin_ttl02{
		width: calc(100% - 140px);
		margin: 0 auto 12px;
	}
	#kenshin .kenshin_ttl02{
		width: calc(100% - 70px);
		margin: 0 auto 10px;
	}
	#kenshin #kenshin_go{
		width: calc(100% - 70px);
		margin: 0 auto 13px;
	}
	#kenshin .kenshin_ttl02_02{
		width: 80px;
		margin: 0 auto 20px;
	}
	#kenshin .tag {
		width: 105px;
		margin: 0 auto 15px;
	}
	#kenshin .tag02 {
		width: 111px;
		margin: 0 auto 15px;
	}
	#kenshin .kenshin_text01 {
		font-size: 14px;
		line-height: 24px;
		margin-bottom: 50px;
		position: relative;
		padding: 0 10px;
		text-align: justify;
		font-feature-settings: "palt";
	}
	#kenshin .kenshin_text02 {
		font-size: 14px;
		line-height: 24px;
		margin-bottom: 45px;
		position: relative;
		padding: 0 10px;
		text-align: justify;
		font-feature-settings: "palt";
	}
	#kenshin .kenshin_sup {
		font-size: 11px;
		line-height: 14px;
		color: #fff;
		/*margin-bottom: 40px;*/
		position: relative;
		padding: 0 7%;
		text-align: left;
		padding-left: 3em;
		text-indent: -1em;
	}
	#kenshin .kenshin_sup_ed {
		font-size: 11px;
		line-height: 14px;
		color: #fff;
		margin-bottom: 40px;
		position: relative;
		padding: 0 7%;
		text-align: left;
		padding-left: 3em;
		text-indent: -1em;
	}
	#kenshin .movie_area::before{
		position: absolute;
		content: "";
		background: url(../image/sp/kenshin_img01.png) no-repeat;
		width: 44px;
		height: 75px;
		bottom: -51px;
		right: 5px;
		background-size: cover;
		z-index: 1;
	}
	#kenshin .movie_area.area02::before{
		position: absolute;
		content: "";
		background: url(../image/sp/kenshin_img04.png) no-repeat;
		width: 44px;
		height: 84px;
		bottom: -40px;
		right: 8px;
		background-size: cover;
		z-index: 1;
	}
	#kenshin .Whiteboard_bg{
		border-radius: 23px;
		padding: 40px 0 60px;
		position: relative;
	}
	#kenshin .Whiteboard_bg.mask{
		padding: 54px 20px 50px;
	}
	#kenshin .Whiteboard_bg::before{
		width: 13px;
		height: 13px;
		top: 15px;
		left: 15px;
	}
	#kenshin .Whiteboard_bg::after{
		width: 13px;
		height: 13px;
		top: 15px;
		right: 15px;
	}
	#kenshin .Whiteboard_bg .attention {
		font-size: 11px;
		line-height: 17.5px;
		margin-top: 25px;
	}
	#kenshin .Whiteboard_bg .attention li + li {
		margin-top: 5px;
	}
	#kenshin .bottom_pin{
		position: relative;
		width: auto;
		margin: 0 auto 0;
	}
	#kenshin .bottom_pin::before{
		width: 13px;
		height: 13px;
		bottom: 15px;
		left: 15px;
	}
	#kenshin .bottom_pin::after{
		width: 13px;
		height: 13px;
		bottom: 15px;
		right: 15px;
	}
	.SP_style {
		flex-wrap: wrap;
		width: 100%;
		margin: 0 auto;
	}
	#kenshin .flex_item03{
		width: 100%;
		margin-bottom: 50px;
	}
	#kenshin .flex_item03:last-of-type {
	  margin-bottom: 0;
	}
	#kenshin .anc-reason_img01{
		width: calc(100% - 108px);
		margin: 0 auto;
	}

	#kenshin .flex_item03:first-of-type .kenshin_imgintxt01 img:nth-of-type(2){
		width: 197px;
	  }
	  #kenshin .flex_item03:first-of-type .kenshin_imgintxt01 img:nth-of-type(4){
		width: 203px;
	  }
	  #kenshin .flex_item03:first-of-type .kenshin_imgintxt01 img:nth-of-type(6){
		width: 151px;
	  }
	  #kenshin .flex_item03:first-of-type .kenshin_imgintxt01 img:nth-of-type(8){
		width: 222px;
	  }
	  #kenshin .flex_item03:nth-of-type(2) .kenshin_imgintxt01 img{
		width: auto;
		max-width: 222px;
	  }

	#kenshin .kenshin-sp_txt01{
		display: inline-block;
		/* width: 71%; */
	}
	#kenshin .kenshin-sp_txt02{
		display: inline-block;
		/* width: 52%; */
	}
	#kenshin .kenshin-sp_txt03{
		display: inline-block;
		/* width: 77%; */
	}
	#kenshin .kenshin-sp_txt04{
		display: inline-block;
		/* width: 90% !important; */
	}
	#kenshin .flex_item03 .kenshin_imgintxt01 {
		line-height: 30px;
	}
	#kenshin .flex_item03 .kenshin_imgintxt01 .kenshin_note{
		font-size: 10px;
		vertical-align: top;
	}
	
	#kenshin .flex_item03 .kenshin_imgintxt01 img{
		margin: 0;
	}
	#kenshin .flex_item03 .kenshin_imgintxt01 span{
		display: block;
		line-height: 1.5;
		font-size: 14px;
	}
	#kenshin .flex_item03 .kenshin_imgintxt01 .mt_sp01{
		margin-top: 5px;
	}
	#kenshin .kenshin-sp_txt05{
		margin-top: 10px;
		margin-bottom: 6px;
	}
	#kenshin .kenshin-sp_txt06{
		margin-top: 6px;
	}
	#kenshin .kenshin-sp_txt07{
		margin-top: 4px;
	}
	#kenshin .flex_item03 .mb-10{
		margin-bottom: 7px;
	}
	#kenshin .flex_item03 .mb_09{
		display: none;
		margin-bottom: -15px !important;
	}
	#kenshin .Navyboard_bg{
		width: 270px;
		padding: 11px 20px;
		margin: 5px auto 20px;
		font-size: 10px;
		line-height: 14px;
	}
	#kenshin .Navyboard_bg::before{
		width: 7px;
		height: 7px;
		top: 8px;
		left: 8px;
		z-index: 999;
	}
	#kenshin .Navyboard_bg::after{
		width: 7px;
		height: 7px;
		top: 8px;
		right: 8px;
	}
	#kenshin .bottom_pin-n{
		width: 270px;
		margin-bottom: 12px;
	}
	#kenshin .bottom_pin-n::before{
		width: 7px;
		height: 7px;
		bottom: 8px;
		left: 8px;
		z-index: 999;
	}
	#kenshin .bottom_pin-n::after{
		width: 7px;
		height: 7px;
		bottom: 8px;
		right: 8px;
	}
	#kenshin .kenshin_txt05{
		margin-top: -7px;
		letter-spacing: -1px;
		width: 100%;
		margin-left: 0;
		line-height: 1.5;
	}
	#kenshin .kenshin_txt06{
		display: inline-block;
		width: 80%;
	}
	#kenshin .kenshin_txt07{
		display: inline-block;
		width: 70%;

	}
	#kenshin .annotation_box{
		margin-top: 26px;
		font-size: 10px;
		line-height: 1.545;
		font-feature-settings: "palt";
		/* padding-left: 3%;
		padding-right: 3%; */
	}
	/*#kenshin .annotation:first-child {
		margin-bottom: 8px;
	}*/
}
/*****************************************************
#kenshin .kenshin_area02
******************************************************/
#kenshin .kenshin_area02_ttl01{
	width: 867px;
	height: 420px;
	margin: 70px auto 60px;
	position: relative;
}
/* #kenshin .kenshin_area02_ttl01 img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
} */
#kenshin .kenshin_area02_ttl02 img{
	margin: auto;
	margin-top: 16px;
}
#kenshin .kenshin_area02_ttl03 img{
	margin: auto;
	margin-top: 45px;
	margin-bottom: 16px;
}
@media (max-width: 768px){
	#kenshin .kenshin_area02_ttl01 {
		width: auto;
		/*height: 350px;
		margin: 23vh auto 17vh;*/
		height: auto;
		margin: 38px auto 28px;
		position: relative;
	}
	#kenshin .kenshin_area02_ttl01 img{
		/* top: 170px;
		left: 50%; */
		position: static;
		transform: initial;
	}
	#kenshin .kenshin_area02_ttl02 img{
		margin-top: 0;
	}
	#kenshin .kenshin_area02_ttl03 img{
		width: calc(100% - 80px);
		margin-top: 30px;
		margin-bottom: 0;
	}
}
@media (max-width: 400px){
	#kenshin .kenshin_area02_ttl01 {
		width: calc(100% - 20px);
		height: auto;
		/* margin: 0 auto 0; */
		position: relative;
	}
}
/*****************************************************
#ambassador
******************************************************/
#ambassador{
	padding: 101px 0 108px;
	background: #fff;
	color: #233C82;
}
#ambassador .ambassador_ttl01 {
	width: 645px;
	margin: 0 auto 30px;
}
#ambassador .ambassador_txt01 {
	font-size: 20px;
	line-height: 38px;
	text-align: center;
	font-weight: bold;
	margin-bottom: 50px;
}
#ambassador .flex_w {
	width: 960px;
	margin: 0 auto;
}
#ambassador .flex_item02 {
	width: 450px;
	text-align: justify;
}
#ambassador .flex {
	min-height: 384px;
}
#ambassador .flex_item03 {
	width: 225px;
	font-size: 15px;
	line-height: 20px;
	font-weight: bold;
	font-feature-settings: "palt";
}
#ambassador .flex_item03:nth-child(2n){
	padding-left: 14px;
}
#ambassador .ambassador_img02{
	margin-bottom: 10px;
}
#ambassador .line_txt{
	width: 225px;
	min-height: 155px;
	padding: 0 14px 0 5px;
	background-image: linear-gradient(to bottom, #233C82, #233C82 3px, transparent 3px, transparent 8px);
	background-size: 1px 5px;
	background-position: right top;
	background-repeat: repeat-y;
}
#ambassador .txt_mb01{
	margin: 25px 0 26px;
}
#ambassador .txt_mb01 img{
	margin-bottom: 8px;
}
#ambassador .episode{
	display: flex;
	width: 450px;
	min-height: 84px;
	background: #ccefff;
	border-radius: 50px;
	padding: 15px 24px;
	margin: 25px 0 50px;
	font-size: 14px;
	line-height: 18px;
	align-items: center;
	font-weight: bold;
}
#ambassador .flex_item02:nth-last-of-type(-n+2) .episode{
  height: 105px;
}
#ambassador .episode02{
	display: flex;
	width: 450px;
	min-height: 84px;
	background: #ccefff;
	border-radius: 50px;
	padding: 15px 24px;
	margin: 25px 0 50px;
	font-size: 12px;
	line-height: 18px;
}
#ambassador .episode_txt{
	font-feature-settings: "palt" 1;
}
#ambassador .episode_txt.line_02{
	padding-top: 8px;
}
#ambassador .ambassador_img01 {
	padding: 5px 12px 0 0;
}
@media (min-width: 769px){
	#ambassador{
		min-width: 1200px;
	}
	#ambassador .flex_item02 {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	#ambassador .flex_item02:nth-child(3) .episode{
		margin-bottom: 0;
	}
	#ambassador .flex_item02:nth-child(4) .episode{
		margin-bottom: 0;
	}
	#ambassador .txt_mb01 {
		line-height: 21px;
	}
}
@media (max-width: 768px){
	#ambassador{
		padding: 46px 0 0;
		background: #fff;
		color: #233C82;
	}
	#ambassador .ambassador_ttl01 {
		width: calc(100% - 80px);
		margin: 0 auto 15px;
	}
	#ambassador .ambassador_txt01 {
		font-size: 12px;
		line-height: 22px;
		margin-bottom: 31px;
		letter-spacing: -1px;
	}
	#ambassador .sp_area{
		width: 90%;
		font-size: 12px;
		line-height: 17px;
		margin: -12px auto 0;
	}
	#ambassador .sp_area .sp_box:first-of-type{
	   letter-spacing: -1px;
	}
	#ambassador .sp_area p{
		text-align: justify;
		font-weight: bold;
		line-height: 17px;
		/* letter-spacing: -1px; */
		font-feature-settings: "palt";
	}
	#ambassador .ambassador_img02{
		width: calc(100% - 56px);
		margin: 40px auto 15px;
	}
	#ambassador .txt_w01{
		width: 80px;
		margin-bottom: -7px;
	}
	#ambassador .txt_w02{
		width: 61px;
		margin-bottom: -7px;
	}
	#ambassador .line_sp{
		background-image: linear-gradient(to left, #233C82, #233C82 4px, transparent 3px, transparent 8px);  /* 下の線 */
		background-size: 8px 2px;  /* 下の線 */
		background-position: right bottom;  /* 下の線 */
		background-repeat:repeat-x;  /* 下の線 */
		padding-bottom: 11px;
		margin-bottom: 11px;
	}
	#ambassador .episode{
		width: 100%;
		border-radius: 20px;
		padding: 14px 18px;
		margin: 15px 0 40px;
		font-size: 12px;
		line-height: 18px;
		align-items: center;

	}
	#ambassador .episode02{
		width: 100%;
		border-radius: 20px;
		padding: 14px 18px;
		margin: 15px 0 0;
		font-size: 12px;
		line-height: 18px;
		align-items: center;
		height: 126px;
	}
	#ambassador .episode:last-child{
		margin: 12px 0 0;
	}
	#ambassador .ambassador_img01{
		/* width: 22%; */
		padding: 0 0 0 0;
	}
	#ambassador .ambassador_img01 img{
		width: 61px;
	}
	.episode_txt {
		width: 76%;
		margin-left: 2%;
	}
	#ambassador .episode_txt{
	   letter-spacing: -1px;
	}
	#ambassador .episode_txt.line_02{
		padding-top: 8px;
	}
}
/*****************************************************
#howto
******************************************************/
#howto{
	padding: 0 0 0;
}
#howto .bg_navy{
	background: #233c82;
	padding: 135px 0 67px;
}
#howto .howto_ttl01{
	width: 767px;
	margin: 0 auto 35px;
	position: relative;
	pointer-events: none;
}
#howto .howto_ttl01 img{
  position: absolute;
  top: -92px;
  left: calc(50% + 30px);
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
#howto .howto_txt01{
	color: #fff;
	font-size: 14px;
	line-height: 34px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 38px;
}
#howto .howto_btn{
	width: 721px;
	margin: 0 auto;
	opacity: 1;
}
#howto .howto_btn:hover{
	opacity: 0.6;
	transition: 0.1s;
}
@media (min-width: 769px){
	#howto .bg_navy{
		min-width: 1200px;
	}    
}
@media (max-width: 768px){
	#howto{
		padding: 58px 0 0;
	}
	#howto .bg_navy{
		padding: 33px 0 32px;
	}
	#howto .howto_ttl01{
		width: calc(100% - 90px);
		margin: 0 auto 0;
	}
	#howto .howto_txt01 {
		font-size: 12px;
		line-height: 23px;
		margin-bottom: 33px;
	}
	#howto .howto_ttl01 img{
	  position: static;
	  transform:none;
	}
	#howto .howto_btn {
		width: 95%;
		margin: 0 auto;
	}
	
}
/*****************************************************
#nearby
******************************************************/
#nearby{
  position: relative;
  background: #00aeff;
  padding: 70px 0 120px;
}
#nearby .nearby_ttl01{
  width: 445px;
  margin: 0 auto 25px;
}
#nearby .attention {
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  line-height: 22px;
  margin: 0 auto 30px;
}
#nearby .nearby_ttl02{
  width: 716px;
  margin: 125px auto 15px;
}
#nearby .nearby_notes{
  width: 716px;
  margin: 0 auto;
  padding-left: 1em;
  text-indent: -1em;
  text-align: left;
  font-size: 12px;
  color: #FFF;
  line-height: 1.833;
  letter-spacing: -.03em;
  font-weight: bold;
  font-feature-settings: "palt";
}
#nearby .nearby_notes:last-of-type{
  margin-bottom: 65px;
}
#nearby .map_box{
  max-width: 900px;
  margin:0 auto 117px;
  position:relative;
  width:100%;
/*  height:0;
  padding-top:41%; ★★カミングスーン時は隠しています。復活するときに解除してください。★★*/
}
.map_box .map_box_list{
	display: grid;
	justify-content: center;
}
.map_box .map_box_list .map_box_list-link{
	opacity: 1;
}
.map_box .map_box_list .map_box_list-link:hover{
	opacity: 0.6;
	transition: 0.1s;
}

#nearby .map_box iframe{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  }
.list_wrap {
  width: 900px;
  margin: 0 auto 0;
}
.list_wrap dt{
  background: #233c82;
  color: #fff;
  padding: 25px 5px 20px 25px;
  position: relative;
  width: 100%;
  margin-top: 22px;
  cursor: pointer;
  text-align: left;
  font-size: 22px;
}
#medical_map.list_wrap dt {
	border-radius: 999px;
}
.list_wrap dt:first-of-type{
  margin-top: 0;
}

.list_wrap dt::after {
  background: url(../image/icon_arrow02.png) no-repeat;
  width: 37px;
  height: 37px;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  transition: 0.5s;
  transition-property: transform;
  background-size: contain;
}
.list_wrap dt::after {
	position: absolute;
	content: "";
}
.list_wrap dt.open::after {
	transform: rotate(180deg);
}
.list_wrap dd {
  display: none;
	background: #FFFFFF;
  font-weight: bold;
}

.list_wrap .ward_icon_a {
	position: relative;
  color: #233c82;
  padding: 25px 0 20px 25px;
  border-top: solid 5px #00aeff;
  font-weight: bold;
  cursor: pointer;
  text-align: left;
  font-size: 22px;
}

.list_wrap .ward_icon_a::after {
	background: url(../image/icon_arrow01.png) no-repeat;
  width: 40px;
  height: 40px;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  transition: 0.5s;
  transition-property: transform;
  background-size: contain;
}
.list_wrap .ward_icon_a::after {
	position: absolute;
  content: "";
}
.list_wrap .open.ward_icon_a::after {
	transform: rotate(180deg);
}
.list_cont{
  padding: 0 0;
  margin:0 25px;
  font-weight: normal;
}
.list_wrap dd .list_cont{
  display: none;
  border-top: solid 2px #233c82;
  font-weight: bold;
} 
.list_wrap dd:nth-of-type(2) .list_cont{
  display: none;
  border-top: solid 2px #233c82;
}
.list_wrap dd:nth-of-type(4) .list_cont{
  display: none;
  border-top: solid 2px #233c82;
}
.list_wrap dd:nth-of-type(6) .list_cont{
  display: none;
  border-top: solid 2px #233c82;
}
.list_cont li{
  background-image : linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 8px);  /* 幅2の線を作る */
  background-size: 8px 2px;          /* グラデーションの幅・高さを指定 */
  background-position: left bottom;  /* 背景の開始位置を指定 */
  background-repeat: repeat-x;       /* 横向きにのみ繰り返す */
  padding: 20px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #233c82;
  text-align: left;
}
.list_cont li[data-url] {
  cursor: pointer;
}
.list_cont li:last-of-type{
  background-image:none;
}
.list_cont li .r-box{
  text-align: right;
  font-size: 16px;
}
.list_cont li .shop_name{
	font-size: 18px;
}
.list_cont li[data-url] .shop_name::after {
	content: "";
	width: 14.5px;
	height: 14.5px;
	margin-left: 3px;
	margin-bottom: -1px;
	background: url(../image/icon_arrow_r.svg) no-repeat center center;
	background-size: 100% 100%;
	display: inline-block;
}
.list_cont li .address{
  text-indent: -5.75em;
  padding-left: 5.75em;
}
.list_cont li .tel {
	display: inline-block;
}

.btn_top{
  position: absolute;
  right: 0px;
  display: grid;
  row-gap: 6px;
  align-items: center;
  font-weight: bold;
  color: #fff;
  opacity: 1;
}
.btn_top:hover{
	opacity: 0.6;
	transition: 0.1s;
}
.btn_top img{
	width: 100%;
	transform: rotate(180deg);
}

@media screen and (min-width: 768px) {
  a[href^="tel:"] {
		pointer-events: none;
  }

  #nearby{
		min-width: 1200px;
  }
  .map_box .map_box_list{
		grid-template-columns: repeat(2 ,400px);
		column-gap: 46px;
		row-gap: 25px;
  }

  .btn_top{
		grid-template-columns: repeat(1 , 39px);
		bottom: 10px;
		margin: 0 30px;
		font-size: 12px;
  }
}
@media (max-width: 768px){
  #nearby{
		padding: 45px 0 85px;
  }
  .list_wrap{
		width: 100%;
		margin: 0 auto 0;
  }
  #nearby .map_box{
		margin:0 auto 65px;
		position:relative;
		width:100%;
		/*height:0;
		padding-top:75%; ★★カミングスーン時は隠しています。復活するときに解除してください。★★*/
  }
  .map_box .map_box_list{
		display: grid;
		grid-template-columns: repeat(1 ,1fr);
		row-gap: 17px;
		margin: 0 10px;
  }

  #nearby .nearby_ttl01{
		width: 102%;
		margin: 0 auto 15px;
  }
  #nearby .nearby_ttl02{
		width: 100%;
		margin: 70px auto 30px;
  }
  #nearby .attention {
  	margin-bottom: 30px;
  }
  #nearby .nearby_notes{
		width: auto;
		font-size: 12px;
		line-height: 22px;
		font-feature-settings: "palt";
  }
  #nearby .nearby_notes:last-of-type{
		margin-bottom: 38px;
  }
  .list_cont li{
		display: block;
  }
  .list_cont li .r-box{
		text-align: left;
		font-size: 9px;
		/* font-size: 13px; */
  }
  .list_cont li .shop_name{
		display: block;
		font-size: 11px;
		padding-bottom: 2%;
  }
  .list_cont li .address{
		text-indent:0;
		padding-left:0;
		padding-bottom: 2%;
  }

  .list_wrap dt{
		font-size: 13px;
		padding: 12px 5px 10px 25px;
		margin-top: 17px;
  }
	.list_wrap dt::after {
		width: 19px;
		height: 19px;
  }
  #medical_map dt {
  	font-size: 14.5px;
  	text-align: center;
  	padding: 16px 0 14px 0;
  }
  #medical_map dt::after {
  	width: 24px;
  	height: 24px;
  	background-image: url(../image/icon_arrow03.png);
  }

	.list_wrap .ward_icon_a {
		font-size: 13px;
		padding: 12px 0 10px 25px;
  }

	.list_wrap .ward_icon_a::after {
		width: 19px;
		height: 19px;
  }

  .btn_top{
		grid-template-columns: repeat(1 , 27px);
		bottom: 7px;
		margin: 0 15px;
		font-size: 8px;
  }
}

/*****************************************************
footer
******************************************************/
footer{
	padding: 30px 0 31px;
}
footer .footer_logo01{
	padding: 2px 24px 0 0;
}
footer .footer_txt01{
	font-size: 15px;
	font-weight: bold;
	line-height: 21px;
}
footer .footer_txt01 strong{
	font-weight: bold;
}
footer .footer_txt01 span{
	font-size: 13px;
	font-weight: normal;
}
.footer_copy{
	width: 181px;
	padding: 28px 0 32px;
	margin: 0 auto;
}
@media (max-width: 768px){
	footer{
		padding: 27px 0 27px;
	}
	footer .flex{
		width: 95%;
		margin: 0 auto;
	}
	footer .footer_logo01{
		width: 40%;
		padding: 0 20px 0 0;
	}
	footer .footer_txt01 {
		font-size: 12px;
		font-weight: bold;
		line-height: 16px;
		padding-top: 9px;
	}
	footer .footer_txt01 strong{
		font-weight: bold;
		letter-spacing: -1px;
	}
	footer .footer_txt01 span{
		font-size: 10px;
		/* font-weight: normal; */
		font-weight: bold;
	}
	.footer_copy{
		width: 50%;
		padding: 20px 0 0;
		margin: 0 auto;
	}
}

/*****************************************************
modal
******************************************************/
#modal-wrap {
	display: none;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 200;
	cursor: pointer;
	background: rgba(0,0,0,.5);
}
#pharm-wrap {
	display: none;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	position: fixed;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 300;
	pointer-events: none;
}
#pharm-cont {
	color: #233c82;
	width: 712px;
	max-width: calc(100% - 20px);
	max-height: calc(100% - 20px);
	padding: 70px 85px 50px;
	background: #fff;
	pointer-events: auto;
}
#pharm-map {
	padding-top: 57.4%;
	position: relative;
	margin-bottom: 25px;
}
#pharm-map iframe {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	position: absolute;
}
#pharm-title {
	font-size: 20px;
	font-weight: bold;
	padding-bottom: 15px;
	margin-bottom: 18px;
	background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 8px);
	background-size: 8px 2px;
	background-position: left bottom;
	background-repeat: repeat-x;
}
#pharm-address,
#pharm-telnumber {
	font-size: 16px;
	line-height: 22.5px;
	font-weight: bold;
}
@media (max-width: 768px){}