@charset "utf-8";

main {
	overflow: visible;
	padding-bottom:40rem;
	position:relative;
}

main::before,
main::after {
	content:"";
	display: block;
	width:100%;
	height:40rem;
	position:absolute;
	left:0;
	bottom:0;
}

main::before {
	background:url(../images/bg_top_main.jpg) no-repeat center / cover;
}

main::after {
	background:rgba(255,255,255,0.3);
}

.header_fv {
	margin-bottom:0;
}

.header_nav {
	align-items: center;
}

.inner {
	max-width:106rem;
}

/*-------------------------------
	fv
-------------------------------*/

.fv_inner {
	width:100%;
	padding:0 27rem 0rem 10rem;
	position:relative;
}

.fv_txt {
	position:absolute;
	left:10rem;
	top:50%;
	transform:translateY(-50%);
	z-index: 3;
}

.fv_txt h2 {
	/* font-size:5.6rem; */
	font-size:clamp(5.6rem ,3.8vw , 8.4rem);
	letter-spacing: 0.04em;
	font-weight:400;
	line-height:1.75;
	margin-bottom:0.75em;
}

.fv_txt p {
	font-size:2rem;
	letter-spacing: 0.02em;
}

.fv_img {
	/* width:calc(100% - 47rem); */
	width:56%;
	min-width:50rem;
	margin:0 0 0 auto;

}

.fv_img figure {
	position:relative;
}

.fv_img figure::before {
	content:"";
	display: block;
	width:100%;
	height:100%;
	background:rgba(255,255,255,0.62);
	position:absolute;
	left:0;
	top:0;
}

/*-------------------------------
	message
-------------------------------*/

.sec_message {
	overflow:visible;
	padding:6rem 0 12rem;
}

.bg_medicine {
	max-width:144rem;
}

.bg_medicine01 {
	top:1rem;
	left:-3rem;
}


.bg_medicine02 {
	bottom:-5rem;
	left:-5rem;
}

.bg_medicine03 {
	top:-13.5rem;
	right:19rem;
}

.bg_medicine04 {
	top:3rem;
	right:-15rem;
}

.bg_medicine05 {
	right:17rem;
	bottom:5rem;
	transform:rotate(23deg);
}

.mes_wrap h2 {
	font-size:4rem;
	font-weight:500;
	line-height:1.5;
	letter-spacing: 0.04em;
}

.mes_txt {
	width:calc(100% - 34rem);
	padding:1rem 0 0 7rem;
}

.mes_txt p {
	line-height:1.6;
}

.mes_txt p:not(:last-of-type) {
	margin-bottom:1.25em;
}

.mes_wrap .link_nav {
	max-width:28rem;
	margin-top:4rem;
}



/*-------------------------------
	sec news
-------------------------------*/

.sec_news {
	padding:6rem 0;
}

.news_title {
	position:relative;
	width:21rem;
	padding-bottom:4rem;
}

.news_title h2 {
	font-size:6.4rem;
}

.news_title .btn {
	position:absolute;
	left:0;
	bottom:0;
}

.sec_news .btn.pc_none {
	display: none;
}

.post_list {
	width:calc(100% - 21rem);
}

.post_list article {
	border-top:1px solid #ddd;
}

.post_list article:last-of-type {
	border-bottom: 1px solid #ddd;
}

.post_list a {
	display: flex;
	align-items:flex-start;
	flex-wrap:nowrap;
	padding:1.5rem 2rem;
}

.cat-date {
	display: flex;
	align-items: center;
	min-width:23rem;
}

.date {
	font-size:1.6rem;
	letter-spacing:0.04em ;
}

.cats {
	display: inline-block;
	padding:0.25em 0.75em;
	background:#fff;
	border-radius:2rem;
	font-size:1.6rem;
	margin:0 1.5em;
	line-height:1.5;
}

.post-ttl {
	font-size:2rem;
	letter-spacing: 0.04em;
	line-height:1.5;
	transition:color .5s;
}

.post_list a:hover .post-ttl {
	color:#00AFCC;
}

/*-------------------------------
	service
-------------------------------*/

.sec_service {
	padding:16rem 0;
}

.sec_service .h_title {
	margin-bottom:2em;
}

.ser_block:not(:last-of-type) {
	margin-bottom:10rem;
}

.ser_block:nth-of-type(even) .ar_inner {
	flex-direction: row-reverse;
}

.ser_img {
	width:55.6%;
	padding-bottom:11.1%;
	position:relative;
}

.ser_img figure:not(:first-of-type)  {
	position:absolute;
}

.ser_img01,
.ser_img04 {
	width:100%;
}

.ser_img02,
.ser_img05 {
	width:25%;
}

.ser_img03,
.ser_img06 {
	width:50%;
}

.ser_img02 {
	left:12.5%;
	bottom:7.5%;
}

.ser_img03 {
	right:8.75%;
	bottom:0;
}

.ser_img05 {
	left:12.5%;
	bottom:0;
}

.ser_img06 {
	right:8.75%;
	bottom:7.5%;
}

.ser_txt {
	width:44.4%;
	/* max-width:56rem; */
	padding-top:min(6rem,4%);
	padding-left:min(8rem,5.5%);
	padding-right:min(8rem,5.5%);
}

.ser_block h3 {
	font-size:3.2rem;
	letter-spacing: 0.04em;
	font-weight:400;
	margin-bottom:1em;
	padding:0.375em 0 0.75em 2.875em;
	border-bottom:1px solid #00AFCC;
	position:relative;
}

.ser_block h3::before {
	content:attr(data-no);
	display: block;
	font-size:6.4rem;
	color:#00AFCC;
	font-weight:300;
	position:absolute;
	left:0;
	top:0;
	line-height:1;
}

.ser_txt p {
	line-height:2;
	margin-bottom:1em;
}

.ser_txt .btn {
	margin:0 0 0 auto;
}

.ser_block02 .ser_txt {
	margin-top:4rem;
}

/*-------------------------------
	store
-------------------------------*/

.sec_store {
	overflow: visible;
}

.store_wrap {
	position:relative;
}

.store_bg figure {
	width:25%;
	position:relative;
	z-index: 1;
}

.store_bg figure::before {
	content:"";
	display: block;
	width:100%;
	height:100%;
	background:#E0F6FA;
	opacity:0.75;
	position:absolute;
	left:0;
	top:0;
}

.store_up {
	transform:translateY(-1.5rem);
}

.store_down {
	transform:translateY(1.5rem);
}

.store_txt {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	padding:3rem 0;
	z-index: 2;
}

.sec_txt .btn {
	margin:3rem auto 0;
}

/*-------------------------------
	notice
-------------------------------*/

.sec_notice {
	margin-top:-2rem;
	padding:19rem 0 14rem;
}

/*-------------------------------
	about
-------------------------------*/

.sec_about {
	padding:16rem 0;
}

.about_img_wrap {
	position:relative;
	width:48%;
	max-width:43rem;
}

.about_img_line:not(:first-of-type) {
	position:absolute;
	left:0;
	top:0;
	transition:opacity .4s, visibility .4s;
	opacity:0;
	visibility: hidden;
}

.about_img_line01,
.about_img_line.action {
	opacity:1!important;
	visibility: visible!important;
}

.about_link_nav {
	width:52%;
	max-width:47rem;
	padding-left:8%;
}


/*-------------------------------
	responsive
-------------------------------*/

@media screen and (min-width:1441px) {

.ser_txt {
	padding-left:10rem;
	padding-right:10rem;
}

}

@media screen and (max-width:1260px) {

.fv_inner {
	padding:0 24rem 0 6rem;
}

.fv_txt {
	left:6rem;
}

.ser_txt {
	padding-left:6rem;
	padding-right:6rem;
}

} /* end 1260px */

/*-------------------------------
	ver sp
-------------------------------*/

@media screen and (max-width:768px) {

main {
	padding-bottom:21.7rem;
}

main::before,
main::after {
	height:21.7rem;
}

.inner {
	max-width:100%;
}

/*-------------------------------
	fv
-------------------------------*/

.fv_inner {
	padding:1.5rem 2rem 0rem 2rem;
}

.fv_txt {
	position:relative;
	left:auto;
	top:auto;
	transform:translateY(0);
	margin-top:-5.5rem;
}

.fv_txt h2 {
	font-size:3rem;
	letter-spacing: 0em;
	margin-bottom:0.25em;
}

.fv_txt p {
	font-size:1.6rem;
}

.fv_img {
	width:23.2rem;
	min-width:auto;
	margin:0 auto;
}

/*-------------------------------
	message
-------------------------------*/

.sec_message {
	padding:4rem 0 8rem;
}

.bg_medicine {
	max-width:100%;
}

.bg_medicine01 {
	top:0rem;
	left:-1.5rem;
}


.bg_medicine02 {
	bottom:12rem;
	left:-7rem;
}

.bg_medicine03 {
	top:-10.5rem;
	right:3rem;
}

.bg_medicine04 {
	top:5rem;
	right:-6rem;
}

.bg_medicine05 {
	right:2rem;
	bottom:2rem;
	transform:rotate(23deg);
}

.mes_wrap h2 {
	width:100%;
	font-size:2.6rem;
	margin-bottom:2em;
}

.mes_txt {
	width:100%;
	padding:0;
}

.mes_wrap .link_nav {
	max-width:100%;
	margin-top:3rem;
}


/*-------------------------------
	sec news
-------------------------------*/

.news_title {
	width:100%;
	padding-bottom:0;
	margin-bottom:3rem;
}

.news_title h2 {
	font-size:4.8rem;
}

.sec_news .btn {
	position:relative;
	left:auto;
	bottom:auto;
	margin:3rem 0 0 auto;
}

.sec_news .btn.pc_none {
	display: block;
}

.sec_news .btn.sp_none {
	display: none;
}

.post_list {
	width:100%;
}

.post_list a {
	flex-wrap:wrap;
	padding:2rem 1rem;
}

.cat-date {
	min-width:100%;
	margin-bottom:1rem;
}

.date {
	font-size:1.6rem;
	letter-spacing:0.04em ;
}

.cats {
	font-size:1.4rem;
}

.post-ttl {
	font-size:1.8rem;
}

/*-------------------------------
	service
-------------------------------*/

.sec_service {
	padding:8rem 0;
}

.sec_service .h_title {
	margin-bottom:1em;
}

.ser_block:not(:last-of-type) {
	margin-bottom:8rem;
}

.ar_inner {
	padding:0 3rem;
	display: block;
}

.ser_img {
	width:100%;
	padding-bottom:7rem;
	margin-bottom:2rem;
}

.ser_block02 .ser_img {
	padding-bottom:8rem;
}

.ser_img01,
.ser_img04 {
	width:100%;
}

.ser_img02,
.ser_img05 {
	width:9.5rem;
}

.ser_img03,
.ser_img06 {
	width:19rem;
}

.ser_img02 {
	left:2rem;
	bottom:2rem;
}

.ser_img03 {
	right:2rem;
	bottom:0;
}

.ser_img05 {
	left:2rem;
	bottom:0;
}

.ser_img06 {
	right:2rem;
	bottom:2rem;
}

.ser_txt {
	width:100%;
	max-width:100%;
	padding:0;
}

.ser_block h3 {
	font-size:2.4rem;
}

.ser_block h3::before {
	font-size:4.8rem;
}

.ser_block02 .ser_txt {
	margin-top:0;
}

/*-------------------------------
	store
-------------------------------*/

.store_bg figure {
	width:50%;
	height:40.6rem;
}

.store_bg figure:nth-of-type(n+3){
	display: none;
}

.store_up {
	transform:translateY(-0.75rem);
}

.store_down {
	transform:translateY(0.75rem);
}

/*-------------------------------
	notice
-------------------------------*/

.sec_notice {
	margin-top:-2rem;
	padding:9.5rem 0 7rem;
}

/*-------------------------------
	about
-------------------------------*/

.sec_about {
	padding:8rem 0;
}

.about_img_wrap {
	width:100%;
	max-width:100%;
}

.about_link_nav {
	width:100%;
	max-width:100%;
	padding-left:0;
}

.about_link_nav a {
	padding:2rem 2rem 2rem;
}

.about_link_nav .about_img {
	padding:0 2rem 3rem;
}

} /* end 768px */