@charset "utf-8";

/* ---------------
	reset
--------------------*/
body, div, main,
dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
figure, pre, form, fieldset, textarea, p, blockquote, th ,td {
	margin: 0;
	padding: 0;
}

main {
	display: block;
}

ul{
	list-style-type: none;
}

table {
	line-height: 1.6;
	border: 0px;
	border-collapse:collapse;
	font-size: 1.6rem;
}

table th {
	font-weight: normal;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 1em;
	font-weight: normal;
}
textarea {
	padding: 2px 4px;
	font-size: 1.6rem;
	line-height: 1;
	color: #444;
}

input {
	vertical-align: middle;
	margin: 0;
	padding: 0;
	color: #444;
}

p {
	line-height: 1.5;
}

img {
	border: none;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
}

address {
	font-style:normal;
}

ul li {
	line-height: 1.4;
}

*,*::before,*::after{
	box-sizing: border-box;
}

em {
	font-style: normal;
}

.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

input[type='search'] {
	-webkit-appearance: none;
}

/* ---------------
　　　共用
--------------- */

:root {
  --p_color: #0b7b74;
  --unit-space-lg: 60px;
  --unit-space-md: 40px;
  --unit-space-sm: 20px;
}

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

  :root {
    --unit-space-lg: 100px;
    --unit-space-md: 60px;
    --unit-space-sm: 30px;
  }

}

html {
    font-size: 62.5%;
}

body  {
	font-size: 1.6rem;
	letter-spacing: 0.03em;
	line-height: 1;
	color: #333;
	-webkit-text-size-adjust: none;
	-webkit-print-color-adjust: exact;
	font-family: 'Noto Sans JP', sans-serif;
}

.ft_robot {
	font-family: 'Roboto', sans-serif;
}

a:link {
	border: none;
	color: #333;
	text-decoration: none;
	transition: all 0.1s ease;
}

a:visited {
	border: none;
	color: #333;
	text-decoration: none;
}

a:active {
	border: none;
	color: #333;
	text-decoration: none;
}

a:hover {
	border: none;
	color: #333;
	text-decoration: none;
	transition: all 0.1s ease;
}

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

	.alpha a:hover {
		filter: alpha(opacity=70);
		-moz-opacity:0.7;
		opacity:0.7;
		transition: opacity 0.25s ease 0s;
	}

	.alpha a {
		-webkit-transition: all 0.1s ease 0s;
		-moz-transition: all 0.1s ease 0s;
		transition: opacity 0.25s ease 0s;
	}

}

.sp {
	display: none;
}

.pc {
	display: block;
}

a[href^="tel:"] {
    text-decoration: none !important;
}

img.fit {
	width: 100%;
	height: auto;
}

img.trim_center {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

a[href^="no_large"] {
    pointer-events: none;
}

.wrapper {
	position: relative;
}

.lg_1 .wrapper {
}

.entry_edit .wrapper {
  margin-top: 250px;
}

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

	.wrapper {
	}

	.sp {
		display: block;
	}

	.pc {
		display: none;
	}

	.columnImage {
		width: 100%;
	}

}

a.nolink {
	cursor: default;
	text-decoration: none !important;
    pointer-events: none;
}

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

	a[href^="tel:"] {
	    pointer-events: none;
	}

}

.main {
	z-index: 1;
	margin-top: 70px;
}

.advisor .main,
.page_entry .main {
	overflow: hidden;
}

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

	.main {
		margin-top: 140px;
		position: relative;
	}

	.lg_1.advisor .main,
	.lg_1.page_entry .main,
	.lg_2.advisor .main,
	.lg_2.page_entry .main {
		overflow: inherit;
	}

	.lg_1 .header,
	.lg_2 .header {
		margin-top: 90px;
	}

	.lg_1 .main,
	.lg_2 .main {
		margin-top: 230px;
	}

}

.center {
	text-align: center;
}


/* -----------------
	header
----------------- */

.header {
	padding: 10px;
	background: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 12;
	height: 70px;
}

.header .logo {
	width: 126px;
}

.header_parts {
	display: none;
}

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

	.header {
		padding: 20px 32px;
		height: 140px;
	}

	.header .logo {
		width: 176px;
		flex-shrink: 0;
	}

	.header_parts {
		display: flex;
		align-items: center;
	}

	.header_gnavi ul {
		display: flex;
		align-items: center;
	}

	.header_gnavi li {
		margin: 0 50px 0 0;
		font-size: 1.6rem;
		font-weight: 700;
		white-space: nowrap;
	}

	.header_gnavi li a:hover {
		color: #0c6ea4;
	}

	.ico_outlink {
		padding-right: 18px;
		display: inline-block;
		background: url(../images/common/ico_outlink.svg) no-repeat right center / 12px auto;
	}

	.ico_outlink:hover {
		background: url(../images/common/ico_outlink_b.svg) no-repeat right center / 12px auto;
	}

}

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

	.header {
		padding-left: 20px;
		padding-right: 20px;
	}

	.header_gnavi li {
		margin-right: 20px;
	}

}

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

	.header_gnavi ul {
		margin-right: 20px;
		display: block;
	}

	.header_gnavi li {
		margin: 3px 0;
	}

}

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

	.header_tel {
		margin: 0 20px 0 0;
	}

	.header_tel .ico_tel {
		padding: 0 0 0 40px;
		font-size: 3.6rem;
		font-weight: 600;
		font-family: 'Roboto', sans-serif;
		background: url(../images/common/ico_tel.svg) no-repeat 0 center / 32px auto;
	}

	.header_tel .ico_tel a {
		color: var(--p_color);
	}

	.header_tel .tel_hour {
		padding: 2px 0;
		background: #5f5f5f;
		color: #fff;
		font-size: 1.4rem;
		font-weight: 700;
		text-align: center;
	}

}

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

	.header_parts .btn_trial a,
	.header_parts .btn_contact a {
		padding: 25px 30px;
		color: #fff;
		font-size: 1.8rem;
		font-weight: 600;
		border-radius: 50px;
		position: relative;
	}

	.header_parts .btn_trial a span,
	.header_parts .btn_contact a span {
		position: relative;
		z-index: 2;
		white-space: nowrap;
	}

	.header_parts .btn_trial a::before,
	.header_parts .btn_trial a::after,
	.header_parts .btn_contact a::before,
	.header_parts .btn_contact a::after {
		position: absolute;
		content: '';
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border-radius: 50px;
		transition: all 0.3s ease 0s;
	}

	.header_parts .btn_contact a::before {
  		background-image: linear-gradient( 90deg, rgba(31,182,165,1) 0%, rgb(10,128,195) 100%);
	}

	.header_parts .btn_contact a::after {
		background-image: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
	}

	.header_parts .btn_trial a:hover::after,
	.header_parts .btn_contact a:hover::after {
		opacity: 0;
	}

	.header_parts .btn_trial {
		margin-right: 12px;
	}

	.header_parts .btn_trial a::before {
		background-image: linear-gradient( 0deg, rgba(225,75,156,0.99608) 0%, rgb(230,50,96) 100%);
	}

	.header_parts .btn_trial a::after {
		background-image: linear-gradient( 90deg, rgba(195,32,121,1) 0%, rgb(227,43,91) 100%);
	}

}

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

	.header_tel .ico_tel {
		padding: 0 0 0 35px;
		font-size: 3.2rem;
	}

	.header_parts .btn_trial a,
	.header_parts .btn_contact a {
		padding: 25px 20px;
		font-size: 1.8rem;
		white-space: nowrap;
	}

}

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

	.header_tel {
		margin-right: 10px;
	}

	.header_tel .ico_tel {
		padding: 0 0 0 30px;
		font-size: 2.8rem;
		background-size: 25px auto;
	}

	.header_parts .btn_trial a,
	.header_parts .btn_contact a {
		padding: 20px 15px;
		font-size: 1.6rem;
	}

}

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

	.header {
		padding-left: 10px;
		padding-right: 10px;
	}

	.header .logo {
		width: 150px;
	}

	.header_gnavi ul {
		margin-right: 10px;
	}

	.header_gnavi li {
		font-size: 1.3rem;
	}

	.header_tel .ico_tel {
		font-size: 2.2rem;
	}

	.header_parts .btn_trial a,
	.header_parts .btn_contact a {
		padding: 15px 10px;
		font-size: 1.4rem;
	}

}


.sp_contact_bar {
	padding: 10px;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	background: rgba(255,255,255,0.8);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 10;
	box-shadow: 0px -3px 3px 0px rgba(0, 0, 0, 0.1);
}

.sp_contact_bar .header_tel {
	margin: 0 10px 0 0;
}

.sp_contact_bar .header_tel .ico_tel {
	padding: 0 0 0 25px;
	font-size: 2.0rem;
	font-weight: 600;
	white-space: nowrap;
	color: var(--p_color);
	font-family: 'Roboto', sans-serif;
	background: url(../images/common/ico_tel.svg) no-repeat 0 center / 20px auto;
}

.sp_contact_bar .header_tel .ico_tel a {
	color: var(--p_color);
}

.sp_contact_bar .header_tel .tel_hour {
	padding: 2px 0;
	background: #5f5f5f;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 700;
	text-align: center;
}

.sp_contact_bar .btn_contact {
	width: calc(100% - 170px);
	text-align: center;
}

.sp_contact_bar .btn_contact a {
	padding: 16px 10px;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 600;
	border-radius: 50px;
	display: block;
	white-space: nowrap;
	background-image: linear-gradient( 90deg, rgba(11,129,116,0.99608) 0%, rgb(11,90,135) 100%);
}

.page_entry.contact .sp_contact_bar,
.page_entry.trial .sp_contact_bar,
.page_entry.help .sp_contact_bar {
  display: none;
}

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

	.sp_contact_bar {
		display: none;
	}

}

#menu_btn {
    padding: 0;
    background: #fff;
	width: 50px;
	height: 50px;
	position: relative;
	outline: none;
	border: none;
	transition: all 0.3s ease 0s;
}

#menu_btn span {
	display: block;
}

#menu_btn::before {
	top: 25px;
}

#menu_btn span::before {
	top: 16px;
}

#menu_btn::after {
	top: 34px;
}

#menu_btn::before,
#menu_btn::after,
#menu_btn span::before {
	margin: 0 auto;
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	width: 30px;
	height: 2px;
	background-color: var(--p_color);
}

.menu_open #menu_btn::before {
	display: none;
}

.menu_open #menu_btn::after,
.menu_open #menu_btn span::before {
	top: 0;
	bottom: 0;
	margin: auto;
}

.menu_open #menu_btn::after {
	transform: rotate(-45deg);
}

.menu_open #menu_btn span::before {
	transform: rotate(45deg);
}

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

	#menu_btn {
		display: none;
	}

}

#sp_menu_back {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transition: all 0.5s ease;
	opacity: 0;
	z-index: -1;
	background: rgba(0, 0, 0, 0.65);
}

.menu_open #sp_menu_back {
	opacity: 1;
	z-index: 10;
}

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

	#sp_menu_back {
		display: none;
	}

}

.menu {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	background: #fff;
	z-index: 11;
	display: none;
}

.menu_list > li {
	border-top: 2px solid #d7e7e6;
	font-size: 1.6rem;
	font-weight: 600;
}

.menu_list > li > a {
	padding: 20px;
	display: block;
	background: url(../images/common/ico_arrow_b_g.svg) no-repeat right 20px center / 19px auto;
}

.menu_sub_list {
	margin: -5px 20px 15px 30px;
}

.menu_sub_list li {
	font-size: 1.4rem;
	font-weight: 600;
}

.menu_sub_list li a {
	padding: 9px 15px 9px 0;
	display: block;
}

.menu_contact {
	padding: 25px 20px;
}

.menu_contact .btn_trial {
	margin-top: 12px;
}

.menu_contact .btn_trial a {
	padding: 16px 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 600;
	border-radius: 50px;
	display: block;
	white-space: nowrap;
	text-align: center;
	background-image: linear-gradient( 90deg, rgba(195,32,121,1) 0%, rgb(227,43,91) 100%);
}

.menu_contact .btn_contact a {
	padding: 16px 10px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 600;
	border-radius: 50px;
	display: block;
	white-space: nowrap;
	text-align: center;
	background-image: linear-gradient( 90deg, rgba(11,129,116,0.99608) 0%, rgb(11,90,135) 100%);
}

.menu_contact .header_tel {
	margin: 10px 0 0;
	text-align: center;
}

.menu_contact .header_tel .ico_tel {
	margin: 0 0 5px;
	padding: 0 0 0 36px;
	font-size: 3.0rem;
	font-weight: 600;
	white-space: nowrap;
	display: inline-block;
	font-family: 'Roboto', sans-serif;
	background: url(../images/common/ico_tel.svg) no-repeat 0 center / 32px auto;
}

.menu_contact .header_tel .ico_tel a {
	color: var(--p_color);
}

.menu_contact .header_tel .tel_hour {
	padding: 5px 10px 7px;
	background: #5f5f5f;
	color: #fff;
	font-size: 1.2rem;
	font-weight: 700;
	display: inline-block;
}

.arrow {
	background: url(../images/common/ico_arrow.png) no-repeat right center / 6px auto;
}

.menu_list .menu_sub {
	font-size: 1.4rem;
}

.menu_list .menu_sub a {
	background: url(../images/common/ico_arrow.png) no-repeat right 20px center / 6px auto;
}


/* -----------------
	トップ
----------------- */

.top_slide_wrapper {
    background: url(../images/common/page_title_back_sp.png) no-repeat center bottom;
    background-size: 100% auto;
	position: relative;
	overflow: hidden;
}

.top_slide_wrapper .inner {
	padding-bottom: 110px;
	position: relative;
}

.top_slide_wrapper .inner::before {
	position: absolute;
	content: '';
	bottom: 0;
	right: -30px;
	width: 180px;
	height: 240px;
	z-index: 5;
	background: url(../images/top/advisor.png) no-repeat 0 0 / 180px auto;
}

.top_slide_wrapper .inner::after {
	position: absolute;
	content: '';
	width: 100%;
	height: 100px;
	bottom: 0;
	left: 0;
	z-index: 6;
	background: url(../images/top/slide_bottom_sp.png) no-repeat 0 bottom / 100% auto;
}

.top_slide_box {
	z-index: 4;
}

.top_slide_box .slick-slide {
	margin: 0;
	position: relative;
	border-radius: 30px;
	overflow: hidden;
}

.top_slide_box .slick-slide a {
	position: relative;
	display: block;
}

.top_slide_box .slick-slide a .icon_arrow {
	position: absolute;
	right: 20px;
	bottom: 20px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-image: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
}

.top_slide_box .slick-slide a .icon_arrow::after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background: url(../images/common/ico_arrow_b_w.svg) no-repeat center center / 19px auto;
}

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

	.top_slide_wrapper {
		padding: 0;
		background: url(../images/top/slide_back.png) no-repeat center bottom / 2000px auto;
	}

	.top_slide_wrapper .inner {
		padding-bottom: 140px;
	}

	.top_slide_wrapper .inner::before {
		left: calc(50% + 170px);
		width: 450px;
		height: 585px;
		background: url(../images/top/advisor.png) no-repeat 0 0 / 450px auto;
	}

	.top_slide_wrapper .inner::after {
		height: 140px;
		right: 0;
		margin: auto;
		background: url(../images/top/slide_bottom_pc.png) no-repeat center bottom / 2000px auto;
	}

	.top_slide_box .slick-slide {
		margin: 0 20px;
		width: 500px !important;
		border-radius: 5px;
	}

	.top_slide_box .no1 {
		margin-top: 73px;
	}

	.top_slide_box .no2 {
		margin-top: 40px;
	}

	.top_slide_box .no3 {
		margin-top: 18px;
	}

	.top_slide_box .no4 {
		margin-top: 40px;
	}

	.top_slide_box .no5 {
		margin-top: 18px;
	}

	.top_slide_box .no6 {
		margin-top: 73px;
	}

}

.top_slide_text {
	margin: 0 auto;
	display: inline-block;
	position: absolute;
	width: auto;
	top: 320px;
	left: 20px;
	z-index: 5;
}

.top_slide_text p {
	margin: 0 0 10px;
	padding: 3px 5px 5px;
	font-size: 1.4rem;
	font-weight: 700;
	background: #fff;
	display: inline-block;
}

.top_slide_text h1 {
	font-size: 3.0rem;
	line-height: 1.2;
	font-weight: 700;
	color: var(--p_color);
	display: inline-block;
}

.top_slide_text h1 span {
	background: #fff;
	padding: 0 5px 5px;
	display: inline-block;
}

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

	.top_slide_text {
		top: 290px;
		left: calc(50% - 510px);
	}

	.top_slide_text p {
		margin: 0 0 30px;
		padding: 5px 8px;
		font-size: 2.0rem;
	}

	.top_slide_text h1 {
		font-size: 7.0rem;
	}

	.top_slide_text h1 span {
		padding: 0 5px 5px;
	}

}

.top_bnr {
	margin: 35px 20px 40px;
}

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

	.top_bnr {
		margin: 45px auto;
		width: min(90%,1070px);
	}

	.top_bnr a:hover {
		opacity: 0.7;
	}

}

.top_page_navi {
	margin: 30px 30px 70px;
	position: relative;
	z-index: 2;
}

.top_page_navi li {
	font-size: 1.2rem;
	font-weight: 700;
	border-bottom: 1px solid #cecece;
}

.top_page_navi li a {
	padding: 10px 0;
	display: block;
	background: url(../images/common/ico_arrow_nav_g.png) no-repeat right 10px center / 10px auto;
}

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

	.top_page_navi {
		margin: 40px 0 80px;
	}

	.top_page_navi ul {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.top_page_navi li {
		font-size: 1.6rem;
		border: none;
	}

	.top_page_navi li a {
		padding: 20px 0;
		background: url(../images/common/ico_arrow_nav_g.png) no-repeat center bottom / 12px auto;
	}

	.top_page_navi li span {
		padding: 0 40px;
		display: inline-block;
		line-height: 1.2;
		text-align: center;
		border-right: 1px solid #cecece;
	}

	.top_page_navi li:last-child span {
		border: none;
	}

	.top_page_navi li a:hover {
		color: #0c6ea4;
		background: url(../images/common/ico_arrow_nav_b.png) no-repeat center bottom / 12px auto;
	}

}

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

	.top_page_navi li span {
		padding: 0 15%;
		line-height: 1.4;
	}

}

.top_nayami {
	margin: -105px 0 0;
	padding-top: 80px;
}

.top_nayami h2 {
	margin: 0 0 30px;
	text-align: center;
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 1.4;
}

.top_nayami h2 em {
	display: block;
	font-size: 2.8rem;
	color: var(--p_color)
}

.top_nayami ul {
	margin: 0 20px;
}

.top_nayami li {
	margin: 0 0 20px;
	padding: 15px 20px 20px;
	text-align: center;
	background: #e8f4ff;
	border: 10px solid #f3f9ff;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 20px;
}

.top_nayami li h3 {
	margin: 0 0 15px;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
}

.nayami_img1 {
	width: 187px;
}

.nayami_img2 {
	width: 159px;
}

.nayami_img3 {
	width: 196px;
}

.nayami_img4 {
	width: 174px;
}

.nayami_img5 {
	width: 221px;
}

.nayami_img6 {
	width: 158px;
}

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

	.top_nayami {
		margin: -150px 0 0;
	    padding-top: 150px;
	}

	.lg_1 .top_nayami {
		margin: -240px 0 0;
	    padding-top: 240px;
	}

	.top_nayami .inner {
		margin: 0 auto;
		width: min(90%,1070px);
	}

	.top_nayami h2 {
		margin: 0 0 30px;
		font-size: 4.0rem;
		line-height: 1.2;
	}

	.top_nayami h2 em {
		font-size: 6.0rem;
	}

	.top_nayami ul {
		margin: 0 auto;
		display: grid;
		justify-items: center;
    	grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    	gap: 40px;
	}

	.top_nayami li {
		margin: 0;
		padding: 0;
		border-radius: 50%;
		width: 330px;
		height: 330px;
	}

	.top_nayami li h3 {
		margin: 0 0 25px;
		font-size: 2.0rem;
	}

}

.top_advisor {
	margin: 20px 0 0;
	overflow: hidden;
}

.top_advisor_title {
	margin: 0 0 10px;
	text-align: center;
	position: relative;
	z-index: 3;
}

.top_advisor_title p {
	padding: 0 0 75px;
	font-size: 1.8rem;
	font-weight: 700;
	color: var(--p_color);
	position: relative;
	display: inline-block;
	text-align: center;
}

.top_advisor_title p::after {
	position: absolute;
	content: '・・・';
	color: var(--p_color);
	font-size: 2.4rem;
	letter-spacing: -0.3em;
	writing-mode: vertical-rl;
	left: 0;
	right: 0;
	top: 33px;
	margin: auto;
	line-height: 10px;
	width: 10px;
}

.top_advisor_title h2 {
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 1.4;
}

.top_advisor_title h2 em {
	padding: 5px 0 0;
	color: #c42079;
	font-size: 2.8rem;
	line-height: 1.2;
	display: block;
}

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

	.top_advisor {
		margin: -10px 0 0;
		padding-top: 40px;
		overflow: inherit;
	}

	.lg_1 .top_advisor {
		margin: -100px 0 0;
		padding-top: 130px;
	}

	.top_advisor_title {
		margin: 0 0 65px;
	}

	.top_advisor_title p {
		font-size: 3.0rem;
	}

	.top_advisor_title p::after {
		top: 50px;
	}

	.top_advisor_title h2 {
		font-size: 3.0rem;
	}

	.top_advisor_title h2 em {
		padding: 3px 0 0;
		font-size: 6.0rem;
	}

}

.top_advisor_left {
	margin: 0 0 10px;
}

.top_advisor_right {
	margin: 0 0 0 20px;
}

.top_advisor_right .advisor_img1 {
	border-radius: 10px 0 0 10px;
	overflow: hidden;
}

.top_advisor_right .inner {
	margin: -48px 20px 0 0;
	position: relative;
	z-index: 2;
}

.top_advisor_right h3 {
	margin: 0 0 25px 15px;
	font-size: 3.0rem;
	line-height: 1.5;
	font-weight: 700;
}

.top_advisor_right h3 span {
	display: block;
	color: #fff;
	text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
}

.top_advisor_right p {
	margin: 0 0 10px;
	font-size: 1.6rem;
	font-weight: 500;
}

.top_advisor_right .link_arrow {
	margin: 25px 0 40px;
}

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

	.top_advisor_column {
		display: flex;
		background: url(../images/top/advisor_back_pc.png) no-repeat center 35px / 1953px auto;
	}

	.top_advisor_left {
		margin: 0;
		width: 40%;
	}

	.top_advisor_left figure {
		margin: -240px auto 0;
		max-width: 614px;
		height: 610px;
		position: relative;
		z-index: 2;
		background: url(../images/top/advisor_left_pc.png) no-repeat right top / cover;
	}

	.top_advisor_right {
		margin: 0;
		width: 60%;
	}

	.top_advisor_right .inner {
		margin: 0 auto;
		max-width: 580px;
	}

	.top_advisor_right .advisor_img1 {
		border-radius: 0;
	}

	.top_advisor_right h3 {
		margin: -112px 0 45px;
		font-size: 7.0rem;
	}

	.top_advisor_right p {
		margin: 0 40px 35px 0;
	}

	.top_advisor_right .link_arrow {
		margin: 50px 0 0;
	}

}

p.link_arrow {
	font-size: 1.6rem;
	font-weight: 700;
}

p.link_arrow a {
	padding: 15px 65px 15px 0;
	background: url(../images/common/btn_circle.png) no-repeat right center / 50px auto;
	color: var(--p_color);
}

.top_advisor_img {
	margin: 0 -5px;
}

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

	p.link_arrow a {
		padding: 15px 70px 15px 0;
	}

	p.link_arrow a:hover {
		color: #0c6ea4;
		background: url(../images/common/btn_circle_ov.png) no-repeat right center / 50px auto;
	}

	.top_advisor_img {
		margin: -430px 0 0;
		padding-left: 4%;
		width: 50%;
		position: relative;
	}

}

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

	.top_advisor_img {
		width: 46%;
	}

}

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

	.top_advisor_right .inner {
		max-width: inherit;
	}

	.top_advisor_right h3 {
		margin-left: 80px;
	}

	.top_advisor_right .inner p {
		margin-left: 80px;
	}

}

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

	.top_advisor_right h3 {
		margin-top: -95px;
		font-size: 6.0rem;
	}

	.top_advisor_img {
		margin-top: -300px;
		width: 43%;
	}

}

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

	.top_advisor_right h3 {
		margin-top: -80px;
		font-size: 5.0rem;
	}

}

.top_category {
	margin: -30px 5px 0;
	padding-top: 70px;
}

.top_category > .inner {
	padding: 55px 30px 30px;
	border-radius: 50px 50px 0 0;
	background: #eff6f5;
	position: relative;
}

.top_pickup > .inner::after,
.top_category > .inner::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	right: 0;
	width: 150px;
	height: 10px;
	margin: auto;
	border-radius: 0 0 4px 4px;
	background-image: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
}

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

	.top_category {
		margin: -70px calc(50% - 50vw) 0;
		padding-top: 100px;
		width: 99.5vw;
	}

	.lg_1 .top_category {
		margin-top: -160px;
		padding-top: 190px;
	}

	.top_category > .inner {
		margin: 0 25px;
		border-radius: 100px 100px 0 0;
		padding: 120px 7vw 135px;
		width: calc(100% - 40px);
	}

}

.top_category_main_title {
	margin: 0 0 35px;
	padding: 115px 0 0;
	text-align: center;
	background: url(../images/top/advisor_product.png) no-repeat center top / 135px auto;
}

.top_category_main_title h2 span {
	margin: 0 0 5px;
	padding: 12px 0 20px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
	display: block;
	background: url(../images/top/title_back.png) no-repeat center center / 270px auto;
}

.top_category_main_title h2 {
	text-align: center;
	font-size: 3.4rem;
	font-weight: 700;
	position: relative;
	z-index: 2;
}

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

	.top_category_main_title {
		margin: 0;
		padding: 120px 0 70px;
		background: url(../images/top/advisor_product.png) no-repeat left calc(50% + 425px) bottom 0 / 355px auto;
	}

	.top_category_main_title h2 span {
		margin: 0 0 15px;
		font-size: 2.6rem;
		background: url(../images/top/title_back.png) no-repeat center center / 376px auto;
	}

	.top_category_main_title h2 {
		display: inline-block;
		font-size: 6.4rem;
	}

}

.top_pickup_title,
.top_category_title {
	margin: 0 auto 30px;
}

.top_pickup_title p,
.top_category_title p {
	margin: 0 0 5px;
	padding-left: 15px;
	color: var(--p_color);
	font-size: 1.4rem;
	font-weight: 700;
	position: relative;
}

.top_pickup_title p::before,
.top_category_title p::before {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 10px;
	border-radius: 5px;
	background: var(--p_color);
}

.top_pickup_title h2,
.top_category_title h3 {
	font-size: 2.2rem;
	line-height: 1.2;
	font-weight: 700;
}

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

	.top_pickup_title,
	.top_category_title {
		margin: 0 auto 60px;
		max-width: 1360px;
	}

	.top_pickup_title p,
	.top_category_title p {
		margin: 0 0 8px;
		padding-left: 18px;
		font-size: 1.8rem;
	}

	.top_pickup_title h2,
	.top_category_title h3 {
		font-size: 4.6rem;
	}

}


.top_category_list li {
	margin: 0 0 20px;
}

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

	.top_category_list ul {
		margin: 0 auto;
		max-width: 1395px;
		display: flex;
		flex-wrap: wrap;
	}

	.top_category_list li {
		margin: 0 17px 35px;
		width: calc(33.3333% - 34px);
	}

	.top_category_list li:nth-child(1) {
		margin-top: 70px;
	}

	.top_category_list li:nth-child(3) {
		margin-top: 110px;
	}

	.top_category_list li:nth-child(4),
	.top_category_list li:nth-child(7),
	.top_category_list li:nth-child(10) {
		margin-top: -40px;
	}

	.top_category_list li:nth-child(5),
	.top_category_list li:nth-child(8),
	.top_category_list li:nth-child(11) {
		margin-top: -110px;
	}

}

.top_category_list li a {
	display: block;
}

.top_category_list li h3 {
	margin: -30px 10px 0;
	padding: 10px 15px;
	background: #eff6f5 url(../images/common/ico_arrow_b_g.svg) no-repeat right 15px center / 19px auto;
	font-size: 1.6rem;
	font-weight: 500;
	color: var(--p_color);
	position: relative;
	border-radius: 10px 10px 0 0;
}

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

	.top_category_list li figure {
		position: relative;
		overflow: hidden;
	}

	.top_category_list li figure::before {
		position: absolute;
		content: '';
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		border: 3px solid #0c6ea4;
		border-radius: 10px;
		opacity: 0;
		transition: all 0.3s ease;
	}

	.top_category_list li h3 {
		margin: -40px 30px 0;
		padding: 10px 20px;
		background: #eff6f5 url(../images/common/ico_arrow_b_g.svg) no-repeat right 20px center / 19px auto;
		border-radius: 15px 15px 0 0;
		transition: all 0.3s ease;
	}

	.top_category_list li a:hover figure::before {
		opacity: 1;
	}

	.top_category_list li a:hover h3 {
		color: #0c6ea4;
		background-image: url(../images/common/ico_arrow_b_b.svg);
	}

}

.top_category .btn_green {
	margin-left: -10px;
	margin-right: -10px;
}

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

	.top_category .btn_green {
		margin-left: 0;
		margin-right: 0;
	}

}

.top_pickup {
	margin: -28px 5px 40px;
	padding-top: 30px;
}

.top_pickup .inner {
	padding: 55px 30px 240px;
	border-radius: 0 0 50px 50px;
	background: #eff6f5;
	position: relative;
}

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

	.top_pickup {
		margin: -58px calc(50% - 50vw) 0;
		padding-top: 60px;
		width: 99.5vw;
	}

	.lg_1 .top_pickup {
		margin-top: -148px;
		padding-top: 150px;
	}

	.top_pickup .inner {
		margin: 0 25px;
		border-radius: 0 0 100px 100px;
		padding: 120px 7vw 370px;
		width: calc(100% - 40px);
	}

}

.top_pickup .category_entry_column {
	margin: 0 auto 30px;
}

.top_pickup .category_entry_column figure img {
	border-radius: 10px;
	width: 100%;
	height: auto;
}

.top .contact_parts {
	margin-top: -260px;
}

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

	.top_pickup .category_entry_column {
		margin: 85px auto 0;
		max-width: 1360px;
		grid-template-columns: repeat(auto-fit, calc(33.3333% - 27px));
	}

	.top .contact_parts {
		margin-top: -260px;
	}

}

/* -----------------
	カテゴリー
----------------- */

.small_page_header.category_header {
	margin-bottom: 20px;
	padding-bottom: 70px;
	background-position: center bottom;
}

.small_page_header.category_header .page_header_box {
	padding-top: 165px;
	border: none;
	background: url(../images/category/title_category_sp.jpg) no-repeat 0 0 / 100% auto;
}

.small_page_header.category_header .page_header_title p {
	margin: 0 0 8px 18px;
	padding-left: 18px;
	color: var(--p_color);
	position: relative;
}

.small_page_header.category_header .page_header_title p::before {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 10px;
	border-radius: 5px;
	background: var(--p_color);
}

.small_page_header.category_header .page_header_title h1 {
	padding: 0 0 10px 15px;
	color: #333;
}

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

	.small_page_header.category_header {
		margin-bottom: 0;
		padding-bottom: 0;
		background-position: center bottom 20px;
	}

	.small_page_header.category_header .page_header_box {
		padding: 0;
		background: url(../images/category/title_category_pc.jpg) no-repeat center center / cover;
	}

	.small_page_header.category_header .page_header_title h1 {
		padding: 0 15px 10px 10px;
	}

}

.category_entry_list .inner {
	margin: 0 20px;
}

.category_column > li {
	position: relative;
}

.category_column > li::before {
	position: absolute;
	content: '';
	left: -20px;
	top: 145px;
	width: 100%;
	height: 350px;
	background: #eff6f5;
	border-radius: 0 10px 10px 0;
	z-index: -1;
}

.category_column .category_img {
	margin: 0 -20px 80px 0;
	width: calc(100% + 20px);
	height: 105px;
	border-radius: 10px 0 0 10px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
}

.category_column li h2 {
	font-size: 2.4rem;
	font-weight: 700;
	color: var(--p_color);
}

.category_column li h2 a {
	padding: 10px 60px 10px 0;
	color: var(--p_color);
	background: url(../images/common/btn_circle.png) no-repeat right center / 50px auto;
}

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

	.category_entry_list {
		overflow: hidden;
	}

	.category_entry_list .inner {
		margin: 0 auto;
    	width: min(95%,1100px);
	}

	.category_column > li {
		padding: 130px 0;
	}

	.category_column > li:last-child {
		padding-bottom: 0;
	}

	.category_column > li::before {
		left: -100%;
		top: 50px;
		width: calc( 100% + 440px);
	}

	.category_column li h2 {
		font-size: 3.0rem;
		line-height: 1.6;
		position: relative;
		z-index: 2;
		width: calc(100% - 630px);
	}

	.category_column li h2 a {
		padding: 15px 70px 15px 0;
	}

	.category_column .category_img {
		position: absolute;
		top: 0;
		left: calc(50% - 50px);
		width: 700px;
		height: 210px;
		margin: 0;
		border-radius: 10px;
	}

}

.category_entry_column {
	margin: 40px 0 60px;
}

.category_entry_column > li {
	margin: 50px 0 0;
    background-image: linear-gradient( 0deg, rgba(48,186,195,1) 0%, rgb(47,186,139) 100%);
	border-radius: 10px;
}

.category_entry_column > li a {
	margin: 2px;
    padding: 20px;
	background: #fff;
	display: inline-block;
	border-radius: 8px;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	position: relative;
}

.category_entry_column > li a::before {
	position: absolute;
	content: '';
	top: -1px;
	left: -1px;
	border: 1px solid #fff;
	width: calc(100% + 2px);
	height: calc(100% + 2px);
	border-radius: 10px;
   	transition: top 0.25s ease 0s;
}

.category_entry_column > li h3 {
	margin: 0;
	padding: 15px 70px 15px 0;
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--p_color);
	position: relative;
	background: url(../images/common/btn_circle.png) no-repeat right center / 50px auto;
}

.category_entry_column > li h3::after {
	position: absolute;
	content: '';
	left: -21px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 5px;
	height: 50px;
	border-radius: 0 3px 3px 0;
	background-image: linear-gradient( 90deg, rgba(11,129,116,0.99608) 0%, rgb(11,90,135) 100%);
}

.category_entry_column li p.title_tag {
	position: absolute;
	top: -24px;
	left: -2px;
	padding: 5px 15px 8px;
	font-size: 1.6rem;
	font-weight: 700;
	color: #fff;
	display: inline-block;
	border-radius: 10px 10px 10px 0;
	background: var(--p_color);
}

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

	.category_entry_column {
		margin: 100px 0 0;
		display: grid;
		justify-content: center;
		grid-template-columns: repeat(auto-fit, 340px);
		gap: 40px;
	}

	.category_entry_column > li {
		margin: 0;
    	position: relative;
    	top: 0;
		width: 100%;
    	transition: top 0.25s ease 0s;
		justify-self: center;
	}

	.category_entry_column > li a {
    	padding: 35px 40px;
    	transition: top 0.25s ease 0s;
	}

	.category_entry_column > li h3 {
    	transition: top 0.25s ease 0s;
	}

	.category_entry_column > li h3::after {
		left: -41px;
    	transition: top 0.25s ease 0s;
	}

}

.category_entry_column > li figure {
	margin: 15px 0;
	text-align: center;
}

.category_entry_column > li figure img {
	height: 340px;
	width: auto;
}

.category_entry_column > li p {
	margin: 0;
	font-size: 1.6rem;
}

.category_entry_column li h4 {
	margin: 0 0 10px;
	font-size: 1.8rem;
	color: var(--p_color);
	font-weight: 700;
	line-height: 1.4;
}

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

	.category_entry_column > li figure {
		margin: 30px 0 25px;
	}

	.category_entry_column > li figure img {
		height: 290px;
	}

	.category_entry_column > li:hover {
		top: -7px;
	}

	.category_entry_column > li:hover a::before {
		opacity: 0;
	}

	.category_entry_column > li:hover h3 {
		color: #0c6ea4;
		background: url(../images/common/btn_circle_ov.png) no-repeat right 1px center / 50px auto;
	}

	.category_entry_column > li:hover h3::after {
		left: -401x;
		background-image: linear-gradient( 90deg, rgba(10,128,195,1) 0%, rgb(30,181,166) 100%);
	}

	.category_entry_column li h4 {
		margin: 0 0 20px;
	}

}

/* --------------------------
	サニタリーボックスのindex
--------------------------- */

.sanitarybox_index .small_page_header.category_header .page_header_box {
/*	background: url(../images/category/sanitarybox/title_category_sp.jpg) no-repeat center center / cover;*/
	background: url(../images/category/sanitarybox/title_category_sp.jpg) no-repeat 0 0 / 100% auto;
}

.sanitarybox_index .lineup .inner {
	border-radius: 50px;
}

.sanitarybox_index .lineup .inner > p {
	margin: 0 0 8px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 700;
}

.sanitarybox_index .lineup .inner > p em {
	margin: 0 5px;
	padding: 0 5px 2px;
	color: #fff;
	display: inline-block;
	background-color: var(--p_color);
}

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

	.sanitarybox_index .small_page_header.category_header .page_header_box {
		background: url(../images/category/sanitarybox/title_category_pc.jpg) no-repeat center center / cover;
	}

	.sanitarybox_index .lineup .inner {
		border-radius: 100px;
	}
	.sanitarybox_index .lineup .inner > p {
		font-size: 2.0rem;
	}

}

.entry_column .sanitarybox_column {
	margin: 0 0 40px;
}

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

	.entry_column .sanitarybox_column {
		margin: 0 0 80px;
		display: flex;
	}

	.entry_column .sanitarybox_column1 > div:first-child,
	.entry_column .sanitarybox_column3 > div:first-child {
		width: 430px;
		order: 2;
	}

	.entry_column .sanitarybox_column1 > div:last-child,
	.entry_column .sanitarybox_column3 > div:last-child {
		margin-right: 60px;
		width: 610px;
		order: 1;
	}

	.entry_column .sanitarybox_column2 > div:first-child {
		margin-right: 60px;
		width: 430px;
	}

	.entry_column .sanitarybox_column2 > div:last-child {
		width: 610px;
	}

}

.entry_column .sanitarybox_column h3 {
	margin: 0 0 15px;
	padding: 8px 15px;
	font-size: 1.6rem;
	color: #fff;
	font-weight: 700;
	display: inline-block;
	border-radius: 15px 15px 2px 15px;
	position: relative;
}

.entry_column .sanitarybox_column h3::after {
	position: absolute;
	content: '';
	width: 15px;
	height: 15px;
	bottom: 0;
	right: -20px;
	border-radius: 6px 6px 6px 2px;
}

.entry_column .sanitarybox_column h4 {
	margin: 0 0 25px !important;
	padding: 0;
	font-size: 2.4rem;
	font-weight: 700;
	border: none;
}

.entry_column .sanitarybox_column1 h3,
.entry_column .sanitarybox_column1 h3::after {
	 background: #e67787;
}

.entry_column .sanitarybox_column1 h4 {
	color: #e67787;
}

.entry_column .sanitarybox_column2 h3,
.entry_column .sanitarybox_column2 h3::after {
	 background: #5f74c1;
}

.entry_column .sanitarybox_column2 h4 {
	color: #5f74c1;
}

.entry_column .sanitarybox_column3 h3,
.entry_column .sanitarybox_column3 h3::after {
	 background: #75b64a;
}

.entry_column .sanitarybox_column3 h4 {
	color: #75b64a;
}

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

	.entry_column .sanitarybox_column h3 {
		margin: 0 0 15px;
		padding: 10px 20px;
		font-size: 2.0rem;
		border-radius: 20px 20px 2px 20px;
	}

	.entry_column .sanitarybox_column h3::after {
		width: 20px;
		height: 20px;
		right: -25px;
		border-radius: 10px 10px 10px 2px;
	}

	.entry_column .sanitarybox_column h4 {
		margin: 0 0 35px !important;
		font-size: 3.2rem;
	}

}

/* -----------------
	商品詳細
----------------- */

.page_header {
	margin-bottom: 5px;
	padding-bottom: 75px;
	background: url(../images/common/page_title_back_sp.png) no-repeat center bottom;
	background-size: 100% auto;
}

.page_header .page_header_box {
	position: relative;
}

.entry_header_back {
	display: none;
}

.sp_entry_header_back {
	height: 400px;
	width: 100%;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	border-radius: 20px;
}

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

	.page_entry .inner {
		margin: 0 auto;
		width: min(95%,1100px);
	}

	.page_header {
		margin: 0;
		padding: 0;
		height: 790px;
		background: url(../images/common/page_title_back_pc.png) no-repeat center bottom 20px;
		background-size: 2000px auto;
	}

	.page_header .page_header_box {
		margin: 0 50px;
		padding: 0;
		height: 600px;
	}

	.entry_header_back {
		height: 600px;
		width: 100%;
		background-repeat: no-repeat;
		background-position: center top;
		background-size: cover;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		display: block;
		border-radius: 20px;
	}

	.sp_entry_header_back {
		display: none;
	}

}

.small_page_header {
	margin-bottom: 10px;
	padding-bottom: 70px;
	background: url(../images/common/min_page_title_back_sp.png) no-repeat center bottom;
	background-size: 100% auto;
}

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

	.small_page_header {
		margin: 0;
		padding: 0;
		height: 435px;
		background: url(../images/common/min_page_title_back_pc.png) no-repeat center bottom 20px;
		background-size: 2000px auto;
	}

	.small_page_header .page_header_box {
		margin: 0 50px;
		padding: 0;
		height: 275px;
		border: 2px solid #fff;
		border-radius: 20px;
		background: rgba(255, 255, 255, 0.5);
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

}

.page_header_title {
	margin: 360px 0 5px;
	position: relative;
	display: inline-block;
	background: #fff;
	width: calc(100% - 20px);
}

.page_header_title .inner {
	background: #fff;
	padding: 25px;
	box-shadow: 4px 3px 5px 0px rgba(9, 49, 92, 0.1);
}

.page_header_title::before {
	position: absolute;
	content: '';
	right: 0;
	top: 0;
	bottom: 0;
	width: 5px;
	height: 50px;
	border-radius: 2px 0 0 2px;
	margin: auto;
	background-image: linear-gradient( 0deg, rgba(11,129,116,0.99608) 0%, rgb(11,90,135) 100%);
}

.page_header_title p {
	margin:  0 0 5px;
	font-size: 1.6rem;
	font-weight: 700;
}

.page_header_title h1 {
	font-size: 3.0rem;
	line-height: 1.3;
	color: var(--p_color);
	font-weight: 700;
}

.page_header_title h1 span {
	font-size: 1.6rem;
	line-height: 1.6;
	font-weight: 700;
	display: block;
}

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

	.page_header_title {
		margin: 375px 0 0;
		left: -10px;
		border-radius: 10px 0 0 0;
		width: auto;
	}

	.page_header_title .inner {
		margin: 0 0 0 10px;
		padding: 25px 30px 25px 25px;
		width: auto;
		box-shadow: 0px 5px 0px 0px rgba(0, 0, 0, 0.2)
	}

	.page_header_title::after {
		position: absolute;
		content: '';
		width: 10px;
		height: 10px;
		left: 0;
		bottom: -10px;
		background: url(../images/common/page_title_parts.png) no-repeat 0 0 / 10px auto;
	}

	.page_header_title p {
		margin:  0 0 10px 10px;
		font-size: 1.8rem;
	}

	.page_header_title h1 {
		font-size: 5.0rem;
	}

	.page_header_title h1 span {
		font-size: 2.0rem;
		line-height: 1.5;
		text-align: right;
	}

}

.small_page_header .page_header_title {
	margin: 0 0 5px;
	left: -12px;
	width: calc(100% - 12px);
}

.small_page_header .page_header_title .inner {
	box-shadow: 4px 3px 5px 0px rgba(0, 0, 0, 0.2);
}

.page_header_box > .page_header_parts {
	display: none;
}

.small_page_header > .page_header_parts {
	margin: 20px 20px 0;
	padding: 20px;
	display: flex;
	border-radius: 20px;
	background: rgba(255,255,255,0.6);
	position: relative;
}

.small_page_header > .page_header_parts::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 20px;
    border: 2px solid transparent;
    background: linear-gradient(0deg, #e1f2ff, #fff) border-box border-box;
    mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box;
    mask-composite: exclude;
}


.small_page_header > .page_header_parts p {
	font-size: 1.6rem;
	font-weight: bold;
}

.small_page_header > .page_header_parts figure {
	margin: 0 0 0 20px;
	width: 90px;
	flex-shrink: 0;
}


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

	.small_page_header .page_header_title {
		margin: 0;
		width: auto;
	}

	.page_header_box > .page_header_parts {
		display: flex;
	}

	.small_page_header > .page_header_parts {
		display: none;
	}

	.page_header_parts {
		margin: 0 60px 0 0;
		align-items: center;
	}

	.page_header_parts p {
		font-size: 1.6rem;
		font-weight: bold;
	}

	.page_header_parts figure {
		margin: 0 0 0 40px;
		width: 195px;
	}

}

.path_wrapper {
	width: 100%;
	overflow-x: auto;
}

.path {
	margin: 0 20px 0 0;
	display: inline-block;
}

.path ol {
	padding: 0 0 0 5px;
	background: #fff;
	border-radius: 0 0 10px 10px;
	display: flex;
	list-style: none;
}

.path ol li {
	font-size: 1.4rem;
	white-space: nowrap;
}

.path ol li > span {
	padding: 16px 15px;
	display: block;
}

.path ol li a {
	padding: 16px 35px 16px 15px;
	display: block;
	color: var(--p_color);
	background: url(../images/common/path.png) no-repeat right 0 / auto 100%;
}

.path ol li a.stay {
	padding-right: 20px;
	background: none;
	color: #333;
}

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

	.path {
		margin: 0 0 0 80px;
	}

}

/* -----------------
	ユニットパーツ
----------------- */

.entry-container {
	margin: 0;
}

.entry_column {
	margin: 0 20px;
}

.entry_column p {
	margin: 0 0 20px;
	font-size: 1.5rem;
	line-height: 1.6;
}

.entry_column p.note {
	font-size: 1.4rem;
	line-height: 1.4;
	color: #757575;
	text-indent: -1em;
	padding-left: 1em;
}

.entry_column p em {
	color: #e50012;
	font-style: normal;
	font-weight: bold;
}

.entry_column p strong {
	font-style: normal;
	font-weight: bold;
}

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

	.entry_column {
		margin: 0;
	}

	.entry_column p {
		margin: 0 0 20px;
		font-size: 1.6rem;
	}

}

.entry_column h2 {
	margin: 60px -20px 40px;
	padding: 50px 20px 20px;
	font-size: 2.6rem;
	line-height: 1.3;
	font-weight: 700;
	position: relative;
	background: url(../images/common/h2_line.png) no-repeat 0 bottom / 1100px auto;
}

.entry_column > h2:first-child {
	margin-top: 0;
}

 .entry_column [class*="column1_"] + .column_clear h2,
 .entry_column [class*="column2_"] + .column_clear h2,
 .entry_column [class*="column3_"] + .column_clear h2 {
 	margin-top: 30px;
}

.entry_column h2 em,
.entry_column h3 em {
	color: var(--p_color);
}

.entry_column h4 em {
	color: #333;
}

.entry_column h2::before {
	position: absolute;
	content: '';
	top: 0;
	left: 20px;
	width: 39px;
	height: 46px;
	background: url(../images/common/h2_parts.svg) no-repeat 0 0 / 39px auto;
}

.entry_column h3 {
	margin: 25px 0 20px;
	font-size: 2.4rem;
	line-height: 1.2;
	font-weight: 700;
}

.entry_column h3.line_left {
	font-size: 2.2rem;
	padding: 10px 0 10px 20px;
	position: relative;
	line-height: 1.4;
}

.entry_column h3.line_left::after {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	border-radius: 2px;
	width: 5px;
	height: 100%;
	background-image: linear-gradient( 90deg, rgba(11,129,116,0.99608) 0%, rgb(11,90,135) 100%);
}

.entry_column h4 {
	margin: 20px 0 15px;
	padding: 0 0 10px;
	color: var(--p_color);
	font-size: 2.2rem;
	line-height: 1.2;
	font-weight: 700;
	border-bottom: 2px solid #75c3be;
}

.entry_column ul {
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
}

.entry_column ul li {
	margin: 0 0 10px;
	padding: 0 0 0 15px;
	font-size: 1.6rem;
	line-height: 1.3;
	position: relative;
}

.entry_column ul li::after {
	position: absolute;
	content: '';
	left: 0;
	top: 9px;
	width: 7px;
	height: 7px;
	border-radius: 4px;
	background: var(--p_color);
}

.entry_column ul.spec {
	margin: 20px 0 5px;
	display: flex;
	align-items: flex-start;
}

.entry_column ul.spec li {
	margin: 0 20px 20px 0;
	padding: 4px 10px 6px;
	color: #fff;
	background: #1f61a4;
	border-radius: 5px;
}

.entry_column ol {
	margin: 0 0 30px;
	padding: 0 0 0 18px;
}

.entry_column ol li {
	margin: 0 0 10px;
	font-size: 1.6rem;
	line-height: 1.3;
}

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

	.entry_column h2 {
		margin: 100px 0 80px;
		padding: 50px 0 25px 0;
		font-size: 4.0rem;
	}

	.entry_column h2::before {
		left: 0;
	}

	 .entry_column [class*="column1_"] + .column_clear h2,
	 .entry_column [class*="column2_"] + .column_clear h2,
	 .entry_column [class*="column3_"] + .column_clear h2 {
	 	margin-top: 50px;
	}

	.entry_column h3 {
		margin: 50px 0 40px;
		font-size: 3.2rem;
		line-height: 1.4;
	}

	.entry_column h3.line_left {
		font-size: 2.6rem;
		padding: 12px 0 12px 25px;
	}

	.entry_column h4 {
		margin: 40px 0 30px;
		padding: 0 0 15px;
		font-size: 2.4rem;
		line-height: 1.3;
	}

	.entry_column ul {
		margin: 0 0 30px;
	}

	.entry_column ul.spec {
		margin: 25px 0 5px;
	}

}

.entry_column .column_border *:first-child {
	margin-top: 0;
}

.entry_column .column_border *:last-child {
	margin-bottom: 0;
}


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

	.entry_column [class*="column1_"] hr:first-child + h2,
	.entry_column [class*="column1_"] hr:first-child + h3,
	.entry_column [class*="column1_"] hr:first-child + h4,
	.entry_column [class*="column1_"] hr:first-child + h5,
	.entry_column [class*="column1_"] hr:first-child + h6,
	.entry_column [class*="column2_"] hr:first-child + h2,
	.entry_column [class*="column2_"] hr:first-child + h3,
	.entry_column [class*="column2_"] hr:first-child + h4,
	.entry_column [class*="column2_"] hr:first-child + h5,
	.entry_column [class*="column2_"] hr:first-child + h6,
	.entry_column [class*="column3_"] hr:first-child + h2,
	.entry_column [class*="column3_"] hr:first-child + h3,
	.entry_column [class*="column3_"] hr:first-child + h4,
	.entry_column [class*="column3_"] hr:first-child + h5,
	.entry_column [class*="column3_"] hr:first-child + h6,
	.entry_column [class*="column1_"] *:first-child,
	.entry_column [class*="column2_"] *:first-child,
	.entry_column [class*="column3_"] *:first-child {
		margin-top: 0;
	}

	.entry_column [class*="column1_"] *:last-child,
	.entry_column [class*="column2_"] *:last-child,
	.entry_column [class*="column3_"] *:last-child {
		margin-bottom: 0;
	}

}

.entry_column .column-table- .acms-table-scrollable th,
.entry_column .column-table- .acms-table-scrollable td {
	display: table-cell;
	white-space: nowrap;
}

.entry_column .column-table- {
	margin: 30px 0;
}

.entry_column .column-table- table {
	width: 99.9%;
/*	border: 1px solid #d8d8d5;*/
}

.entry_column .column-table- table.table_beije {
/*	border: 1px solid #f0deb7;*/
}

.entry_column .column-table- th {
	padding: 15px 20px;
	font-size: 1.6rem;
	line-height: 1.4;
	font-weight: 500;
	border-left: 1px solid #d8d8d5;
	vertical-align: middle;
	white-space: nowrap;
	text-align: center;
	background: url(../images/common/line_gray_ver.png) repeat-y right 0 / 1px auto,
				url(../images/common/line_gray_hor.png) repeat-x 0 bottom / 4px auto;
}

.entry_column .column-table- .table_beije th {
	background: url(../images/common/line_beije_ver.png) repeat-y right 0 / 1px auto,
				url(../images/common/line_beije_hor.png) repeat-x 0 bottom / 4px auto;
}

.entry_column .column-table- td {
	padding: 15px 20px;
	font-size: 1.6rem;
	border-right: 1px solid #d8d8d5;
	background: url(../images/common/line_gray_hor.png) repeat-x 0 bottom / 4px auto;
}

.entry_column .column-table- .table_beije td {
	background: url(../images/common/line_beije_hor.png) repeat-x 0 bottom / 4px auto;
}

.entry_column .column-table- tr:first-child th {
	border-top: 1px solid #d8d8d5;
}

.entry_column .column-table- tr:last-child th {
	background-image: url(../images/common/line_gray_ver.png);
	background-repeat: repeat-y;
	background-position: right 0;
	background-size: 1px auto;
	border-bottom: 1px solid #d8d8d5;
}

.entry_column .column-table- .table_beije tr:last-child th {
	background-image: url(../images/common/line_gray_ver.png);
}

.entry_column .column-table- th.table_header {
	padding: 10px 20px;
	background: #949391;
	color: #fff;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 700;
	border-left: 1px solid #949391;
	border-right: 1px solid #949391;
}

.entry_column .column-table- .table_beije th.table_header {
	background: #cba75a;
	border-left: 1px solid #cba75a;
	border-right: 1px solid #cba75a;
}

.entry_column .column-table- tr:first-child td {
	border-top: 1px solid #d8d8d5;
}

.entry_column .column-table- tr:last-child td {
	background-image: none;
	border-bottom: 1px solid #d8d8d5;
}

.entry_column .column-table- em.red {
	font-weight: 400;
	color: #e50012;
}

.entry_column .column-table- em.blue {
	font-weight: 400;
	color: #0b7bc6
}

.entry_column .column-table- th.orange {
	background-color: #fdf6e7;
}

.entry_column .column-table- th.green {
	background-color: #e9faee;
}

.entry_column .column-table- th.purple {
	background-color: #f5f3ff;
}

.entry_column .column-table- th.pink {
	background-color: #fef5fc;
}

.entry_column .column-table- th.blue {
	background-color: #f3faff;
}

.entry_column .column-table- th.yellow_green {
	background-color: #f6fce8;
}

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

	.entry_column .column-table- {
		margin: 40px 0;
	}

	.entry_column .column-table- th {
		padding: 25px 30px;
		display: table-cell;
		width: 25%;
	}

	.entry_column .column-table- td {
		padding: 25px 30px;
		display: table-cell;
	}

	.entry_column .column-table- .table_header {
		padding: 13px 30px;
		font-size: 1.8rem;
	}

}

.entry_column .table_ptn1 .column-table- {
	border: 1px solid #dcdcdc;
	border-radius: 10px;
}

.entry_column .table_ptn1 .column-table- table {
	border: none;
}

.entry_column .table_ptn1 .column-table- th {
	padding: 20px 25px;
	border-bottom: none;
}

.entry_column .table_ptn1 .column-table- td {
	padding: 20px 25px;
	border-left: 1px solid #d8d8d5;
	border-bottom: none;
}

.entry_column .table_ptn1 .column-table- tr:nth-child(odd) th,
.entry_column .table_ptn1 .column-table- tr:nth-child(odd) td {
	background: none;
}

.entry_column .table_ptn1 .column-table- tr:nth-child(even) th,
.entry_column .table_ptn1 .column-table- tr:nth-child(even) td {
	background: #f6f6f6;
}

[class^="column-table"] .entry-container {
	overflow-x: auto;
}

[class^="column-table"] .entry-container .acms-table-scrollable {
	margin-bottom: 30px;
}

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

	.entry_column .table_ptn1 .column-table- {
		border: 1px solid #d8d8d5;
		border-radius: 10px;
	}

	.entry_column .table_ptn1 .column-table- th {
		padding: 25px 30px;
	}

	.entry_column .table_ptn1 .column-table- td {
		padding: 25px 30px;
	}

	[class^="column-table"] .entry-container .acms-table-scrollable {
		margin-bottom: 30px;
	}

}

.entry_column .video_l,
.entry_column .video_m,
.entry_column .video_s {
	border-radius: 10px;
	padding: 20px;
	border: 1px solid #30a6c3;
}

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

	.entry_column .video_l {
		width: 100%;
		max-width: 1100px;
	}

	.entry_column .video_m {
		width: 520px;
	}

	.entry_column .video_s {
		width: 220px;
	}

	.entry_column .video_l,
	.entry_column .video_m,
	.entry_column .video_s {
		padding: 50px;
	}

}

.entry_column .column_pc {
  display: none;
}

.entry_column .column_sp {
  display: block;
}

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

  .entry_column .column_pc {
    display: block;
  }

  .entry_column .column_sp {
    display: none;
  }

}

/* -----------------
	拡張ユニット
----------------- */

.custom_box {
	margin: 0 0 30px !important;
	text-align: center;
}

.custom_box h3 {
	margin: 0 0 20px;
	padding: 30px 0 0;
	font-size: 2.2rem;
	color: var(--p_color);
	font-weight: 700;
	background: url(../images/common/ico_star.svg) no-repeat center top / 22px auto;
}

.custom_box .title_box {
	margin: 0 20px;
	padding: 2px;
	border-radius: 20px;
	position: relative;
	z-index: 2;
	background-image: linear-gradient( 0deg, rgba(48,166,195,1) 0%, rgb(47,186,175) 100%);
}

.custom_box .title_box::after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: -9px;
	margin: auto;
	width: 22px;
	height: 2px;
	background: var(--p_color);
	transform: rotate(-60deg);
}

.custom_box .title_box .inner {
	padding: 15px 0 15px;
	background: #fff;
	width: 100%;
	border-radius: 18px;
}

.custom_box .inner.title_box_title {
	min-height: 84px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.custom_box .title_box p {
	margin: 0 0 3px;
	font-size: 1.4rem;
	line-height: 1.4;
}

.custom_box .title_box h4 {
	margin: 0;
	padding: 0;
	border: none;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4;
}

.column2_right .custom_box .title_box h4,
.column2_left .custom_box .title_box h4 {
	color: #333;
}

.custom_box .box_img {
	margin-top: -30px;
	border-radius: 20px;
	overflow: hidden;
}

.custom_box .box_img img {
	object-fit: cover;
	aspect-ratio: 1 / 1;
}

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

	.custom_box {
		margin: 0 !important;
	}

	.custom_box h3 {
		margin: 0 0 30px;
		font-size: 2.6rem;
	}

	.custom_box .title_box p {
		font-size: 1.6rem;
	}

	.custom_box .title_box h4 {
		font-size: 2.0rem;
	}

	.custom_box .box_img {
		height: 340px;
	}

	.column2_left .custom_box .box_img,
	.column2_right .custom_box .box_img {
		height: 520px;
	}

}

.custom_gallery {
	margin: 0 0 25px;
}

.custom_gallery .gallery_main figure {
	height: 390px;
	text-align: center;
	position: relative;
}

.custom_gallery .gallery_main img,
.custom_gallery .gallery_thumb li img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 100%;
	max-height: 100%;
}

.custom_gallery .gallery_thumb ul {
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

.custom_gallery .gallery_thumb li {
	margin: 10px 10px 0 0 !important;
	padding: 0;
	width: 60px;
	height: 70px;
	cursor: pointer;
	position: relative;
}

.custom_gallery .gallery_thumb li::after {
	display: none;
}

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

	.custom_gallery {
		margin: 0 0 60px;
	}

	.custom_gallery .gallery_main figure {
		height: 500px;
	}

	.custom_gallery .gallery_thumb li:hover {
		opacity: 0.7;
	}

}

.product_faq {
	margin: 0 -20px;
	padding: 50px 0;
}

.product_faq_title {
	margin: 0 20px 0 0;
	background: #dc6bb8;
	border-radius: 20px 20px 20px 0;
	display: inline-block;
	position: relative;
}

.lunas .product_faq_title {
	background: #0b7bc6;
}

.product_faq_title::after {
	position: absolute;
	content: '';
	border: 1px solid #e5abd2;
	top: 3px;
	left: 3px;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	border-radius: 18px 18px 18px 0;
}

.product_faq_title h3 {
	margin: 25px 30px;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: 700;
}

.product_faq_title h3 em {
	font-size: 2.6rem;
	color: #fff;
}

.product_faq_title h3 sup {
	font-size: 1.4rem;
}

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

	.product_faq {
		margin: 0;
		padding: 40px 0 0;
	}

	.product_faq_title {
		border-radius: 30px 30px 30px 0;
	}

	.product_faq_title::after {
		border-radius: 27px 27px 27px 0;
	}

	.product_faq_title h3 {
		margin: 25px 30px 25px 40px;
		font-size: 2.2rem;
	}

	.product_faq_title h3 em {
		font-size: 3.0rem;
	}

	.product_faq_title h3 sup {
		font-size: 1.6rem;
	}

}

.product_faq_box {
	margin-top: -80px;
	padding: 110px 20px 20px;
	background: #eff6f5;
	border-radius: 30px;
}

.product_faq_box > p {
	font-size: 1.6rem;
	font-weight: 600;
}

.entry_column .product_faq_box ul {
	margin: 50px 0 20px;
}

.entry_column .product_faq_box li {
	margin: 0 0 40px;
	padding: 30px;
	border-radius: 0 20px 20px 20px;
	background: #fff;
}

.entry_column .product_faq_box li::after {
	display: none;
}

.entry_column .product_faq_box li:last-child {
	margin-bottom: 0;
}

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

	.product_faq_box {
		margin-top: -55px;
		padding: 100px 40px 30px;
	}

	.product_faq_box > p {
		text-align: center;
		font-size: 1.8rem;
	}

	.entry_column .product_faq_box ul {
		margin: 65px 0 20px;
		display: flex;
		justify-content: space-between;
	}

	.entry_column .product_faq_box li {
		margin: 0;
		padding: 30px 40px 40px;
		border-radius: 0 20px 20px 20px;
		width: calc(33.3333% - 23px);
	}

}

.product_faq_box li h4 {
	margin: 0 0 65px;
	padding: 0;
	border: none;
	font-size: 1.6rem;
	font-weight: 600;
	color: #dc6bb8;
	position: relative;
}

.product_faq_box li p {
	margin: 0;
	position: relative;
}

.product_faq_box li p img {
	padding: 0 20px;
}

.product_faq_box li h4::before,
.product_faq_box li p::before {
	position: absolute;
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 4px 4px 4px 4px;
}

.product_faq_box li h4::before {
	left: -10px;
	top: -20px;
	background: #dc6bb8;
}

.product_faq_box li p::before {
	left: -10px;
	top: -20px;
	background: #0b7bc6;
}

.product_faq_box li h4::after,
.product_faq_box li p::after {
	position: absolute;
	width: 40px;
	height: 40px;
	color: #fff;
	font-size: 2.6rem;
	font-weight: 700;
	border-radius: 4px 4px 4px 4px;
	font-family: 'Roboto', sans-serif;
	text-align: center;
}

.product_faq_box li h4::after {
	content: 'Q';
	background: #dc6bb8;
	left: -40px;
	top: -50px;
}

.product_faq_box li p::after {
	content: 'A';
	background: #0b7bc6;
	left: -40px;
	top: -50px;
}

.product_faq p.note {
	margin: 0 0 5px;
	text-indent: 0;
	padding-left: 0;
	text-align: left;
	font-size: 1.2rem;
	color: #606060;
	font-weight: 400;
}

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

	.product_faq_box li h4 {
		margin: 0;
		font-size: 1.8rem;
		font-weight: 700;
		height: 135px;
	}

	.product_faq_box li h4::before {
		left: -30px;
	}

	.product_faq_box li p img {
		padding: 0;
	}

	.product_faq_box li p::before {
		left: -30px;
	}

	.product_faq_box li h4::after {
		left: -60px;
	}

	.product_faq_box li p::after {
		left: -60px;
	}

	.product_faq p.note {
		margin: 0 0 10px;
	}

}

.entry_column .product_faq_1box ul {
	margin: 30px 0 10px;
	display: block;
}

.entry_column .product_faq_1box li {
	margin: 0;
}

.entry_column .product_faq_1box li > div:first-child {
	margin: 0 0 80px;
}

.entry_column .product_faq_1box li h4 {
	margin: 0 0 20px;
	padding: 5px 0 0;
	height: auto;
}

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

	.entry_column .product_faq_1box li {
		display: flex;
		justify-content: space-between;
		width: 100%;
	}

	.entry_column .product_faq_1box li > div {
		width: calc(50% - 50px);
	}

	.entry_column .product_faq_1box li > div:first-child {
		margin: 0;
	}

}

.page_navi {
	margin: 0 0 40px;
}

.entry_column .page_navi li {
	margin: 0 5px;
	padding: 0;
	font-size: 1.3rem;
	text-align: left;
	font-weight: bold;
	border-bottom: 1px solid #cecece;
	background: url(../images/common/ico_arrow_nav_g.png) no-repeat right 10px center / 10px auto;
}

.entry_column .page_navi li br {
	display: none;
}

.entry_column .page_navi li::after {
	display: none;
}

.page_navi li a {
	padding: 10px;
	display: block;
}

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

	.page_navi {
		margin: 100px 0 50px;
	}

	.entry_column .page_navi ul {
		display: flex;
		justify-content: center;
		align-items: stretch;
		list-style: none;
	}

	.entry_column .page_navi li {
		padding: 0 0 20px;
		font-size: 1.6rem;
		font-weight: bold;
		display: flex;
		border: none;
		justify-content: center;
		align-items: center;
		transition: all 0.25s ease 0s;
		background: url(../images/common/ico_arrow_nav_g.png) no-repeat center bottom / 12px auto;
	}

	.entry_column .page_navi li br {
		display: block;
	}

	.entry_column .page_navi li:last-child span::after {
		display: none;
	}

	.page_navi li a {
		padding: 0;
		display: block;
		transition: all 0.25s ease 0s;
	}

	.page_navi li a span {
		padding: 0 35px;
		display: block;
		position: relative;
		text-align: center;
	}

	.entry_column .page_navi li span::after {
		position: absolute;
		content: '';
		top: 0;
		bottom: 0;
		left: auto;
		right: 0;
		width: 1px;
		height: 15px;
		border-radius: 0;
		display: block;
		margin: auto;
		background: #cecece;
	}

	.entry_column .page_navi li:hover {
		background-image: url(../images/common/ico_arrow_nav_b.png);
	}

	.page_navi li a:hover {
		color: #0c6ea4;
	}

}


.advisor_point {
	margin: 10px -20px;
}

.advisor_point_title {
	padding: 0 0 85px;
	text-align: center;
	background: url(../images/category/lunas-plim/point_advisor.png) no-repeat center bottom / 105px auto;
}

.advisor_point_title h2 {
	margin: 0;
	padding: 0;
	color: #e43f7a;
	font-size: 2.6rem;
	font-weight: 700;
	background: none;
}

.advisor_point_title h2::before {
	display: none;
}

.advisor_point_title h2 span {
	font-size: 1.8rem;
	color: #333;
	display: block;
}

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

	.advisor_point {
		margin: 100px 0;
	}

	.advisor_point_title {
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		height: 190px;
		background: url(../images/category/lunas-plim/point_advisor.png) no-repeat 40px bottom / 250px auto;
	}

	.advisor_point_title h2 {
		font-size: 4.0rem;
	}

	.advisor_point_title h2 span {
		font-size: 2.6rem;
	}

}

.advisor_point_box {
	padding: 30px 0 0;
	border: 5px solid #f0bed0;
	border-radius: 20px;
}

.advisor_point_box h3 {
	margin: 0;
	padding: 15px 25px;
	color: #e43f7a;
	font-size: 2.2rem;
	line-height: 1.4;
	font-weight: 700;
	position: relative;
}

.advisor_point_box h3::before {
	position: absolute;
	content: '';
	left: -5px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 10px;
	height: 93px;
	border-radius: 0 5px 5px 0;
	background-image: linear-gradient( 90deg, rgba(220,78,201,1) 0%, rgb(223,63,123) 100%);
}

.advisor_point_column {
	margin: 35px 20px 0;
}

.advisor_point_column > div  {
	margin: 0 0 30px;
}

.advisor_point_column h4 {
	margin: 0 0 20px;
	padding: 0;
	font-size: 1.8rem;
	font-weight: 700;
	border: none;
	color: #333;
}

.advisor_point_column figure {
	margin: 0;
}

.advisor_point_column p {
	margin: 10px 0 0;
	font-size: 1.6rem;
}

.advisor_point_1column figure img:first-child {
	margin: 0 0 20px;
}

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

	.advisor_point_box {
		padding: 50px 0 20px;
	}

	.advisor_point_box h3 {
		padding: 20px 0 20px 80px;
		font-size: 2.6rem;
	}

	.advisor_point_box h3::before {
		width: 20px;
		height: 64px;
	}

	.advisor_point_column {
		margin: 40px 80px 20px;
		display: flex;
		justify-content: space-between;
	}

	.advisor_point_column > div  {
		margin-bottom: 0;
		text-align: center;
		width: calc(50% - 20px);
	}

	.advisor_point_column h4 {
		margin: 0 -10px 20px;
		font-size: 2.0rem;
		text-align: center;
	}

	.advisor_point_1column > div {
		width: auto;
	}

	.advisor_point_1column figure {
		display: flex;
		justify-content: space-between;
	}

	.advisor_point_1column figure img {
		width: calc(50% - 20px);
	}

}

.step {
	margin: 40px 10px 80px;
}

.step ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

.step ol li {
	margin: 0 0 40px;
	padding: 40px 30px 25px;
	position: relative;
	border-radius: 10px;
	width: 100%;
	background-image: linear-gradient( 90deg, rgba(48,186,175,1) 0%, rgb(48,166,195) 100%);
}

.step ol li::before {
	position: absolute;
	content: '';
	left: 3px;
	top: 3px;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	background: #fff;
	border-radius: 8px;
}

.step ol li:after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: -26px;
	width: 0;
	height: 0;
	margin: auto;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 10px solid #0b7b74;
}

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

	.step {
		margin: 80px 0 180px;
	}

	.step ol li {
		margin: 0 0 60px;
		padding: 40px 40px 35px;
	}

	.step ol li:after {
		bottom: -37px;
	}

}

.step li h3 {
	margin: 0;
	padding: 8px 12px;
	color: #fff;
	font-size: 1.2rem;
	font-weight: 500;
	display: inline-flex;
	align-items: center;
	z-index: 1;
	font-family: 'Roboto', sans-serif;
	position: absolute;
	top: -10px;
	left: -10px;
	border-radius: 13px 13px 0 13px;
	background: #0b7b74;
}

.step li h3 span {
	padding-left: 5px;
	font-size: 2.0rem;
}

.step li h4 {
	margin: 0 0 10px;
	padding: 0;
	border: none;
	font-size: 2.0rem;
	font-weight: 700;
	position: relative;
	z-index: 1;
	color: #0b7b74;
}

.step li p {
	margin: 0;
	font-size: 1.6rem;
	position: relative;
	z-index: 1;
}

.step ol li:nth-child(2) {
	background-image: linear-gradient( 90deg, rgba(48,186,175,1) 0%, rgb(48,166,195) 100%);
}

.step ol li:nth-child(2):after {
	border-top-color: #11709d;
}

.step ol li:nth-child(2) h3 {
	background: #11709d;
}

.step ol li:nth-child(2) h4 {
	color: #11709d;
}

.step ol li:nth-child(3) {
	background-image: linear-gradient( 90deg, rgba(218,143,198,1) 0%, rgb(236,94,104) 100%);
}

.step ol li:nth-child(3):after {
	display: none;
}

.step ol li:nth-child(3) h3 {
	background: #d62e8b;
}

.step ol li:nth-child(3) h4 {
	color: #d62e8b;
}

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

	.step li h3 {
		padding: 5px 15px;
		font-size: 1.6rem;
		top: -20px;
		left: -28px;
	}

	.step li h3 span {
		padding-left: 10px;
		font-size: 3.0rem;
	}

	.step li h4 {
		margin: 0 0 15px;
		font-size: 2.4rem;
	}

}

.product_detail {
	margin: 80px 5px 0;
}

.product_detail > .inner {
	padding: 55px 0 30px;
	border-radius: 50px 50px 0 0;
	background: #eff6f5;
	position: relative;
}

.product_detail > .inner::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	right: 0;
	width: 150px;
	height: 10px;
	margin: auto;
	border-radius: 0 0 4px 4px;
	background-image: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
}

.product_detail h2 {
	margin: 0;
	padding: 0;
	font-size: 2.6rem;
	font-weight: 700;
	text-align: center;
	background: none;
}

.product_detail h2::before {
	display: none;
}

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

	.product_detail {
		margin: 180px 0 0;
		margin: 0 calc(50% - 50vw);
		width: 99.5vw;
	}

	.product_detail > .inner {
		margin: 0 25px;
		padding: 120px 0 90px;
		border-radius: 100px 100px 0 0;
		width: calc(100% - 40px);
	}

	.product_detail h2 {
		font-size: 4.0rem;
	}

}

.product_detail_column {
	margin: 35px 30px;
}

.product_detail_title {
	margin: 0 0 30px;
}

.product_detail_title h3 {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.4;
}

.product_detail_title h3 span {
	font-size: 1.8rem;
	white-space: nowrap;
}

.product_detail_title p {
	margin: 8px 0 0;
	font-size: 1.6rem;
	font-weight: 700;
}

.product_detail_img figure {
	margin: 0 45px;
	text-align: center;
}

.product_detail_img figure img {
	margin: 0 auto;
	max-height: 300px;
}

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

	.product_detail_img figure img {
		width: auto;
	}

}

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

	.product_detail_column {
		margin: 90px auto 0;
		width: min(95%,1100px);
		display: flex;
		justify-content: center;
	}

	.product_detail_img {
		margin: 0 4% 0 0;
		width: 46%;
	}

	.product_detail_title {
		margin: 0 0 35px;
		display: flex;
		align-items: center;
	}

	.product_detail_title h3 {
		margin: 0;
		padding: 0;
		font-size: 3.2rem;
	}

	.product_detail_title h3 span {
		font-size: 2.0rem;
	}

	.product_detail_title p {
		margin: 0 0 0 25px;
		padding: 8px 0 10px 25px;
		border-left: 1px solid #99b4b0;
	}

	.product_detail_img figure {
		margin: 0 auto;
	}

	.product_detail_img figure img {
		max-height: inherit;
	}

}

.product_detail_info {
	padding: 35px 0 0;
}

.product_detail_info table {
	margin: 0 0 30px;
	width: 100%;
	border-top: 1px solid #99b4b0;
}

.product_detail_info th {
	padding: 15px 0 0;
	text-align: left;
	font-weight: 400;
	font-size: 1.6rem;
	display: block;
}

.product_detail_info tr {
	border-bottom: 1px solid #99b4b0;
}

.product_detail_info td {
	padding: 5px 0 15px;
	text-align: left;
	font-size: 1.6rem;
	display: block;
}

.product_detail_info h4 {
	margin: 0 0 15px;
	padding: 0;
	font-size: 1.8rem;
	font-weight: 700;
	border: none;
	color: var(--p_color);
}

.product_detail_info .btn {
	width: 100%;
}

.product_detail_info .btn a {
	text-align: center;
	font-size: 1.5rem;
	padding: 20px 60px 20px 10px;
}

.product_detail_info .btn .btn-loading {
	width: 45px;
	height: 45px;
}

.product_detail_info .btn .btn-loading .inner {
	width: 43px;
	height: 43px;
}

.product_detail_info .btn .btn-loading .inner img {
	width: 16px;
	height: auto;
}

.product_detail_info .btn_estimate {
	margin: 40px 0 0;
	width: 100%;
}

.product_detail_info .btn_estimate a {
	padding: 25px 0;
	color: #fff;
	display: block;
	border-radius: 10px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	background-image: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
}

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

	.product_detail_info {
		padding: 75px 0 0;
		width: 50%;
	}

	.product_detail_info table {
		margin: 0 0 40px;
	}

	.product_detail_info th {
		padding: 15px 15px 15px 0;
		display: table-cell;
	}

	.product_detail_info td {
		padding: 15px 0;
		display: table-cell;
	}

	.product_detail_info h4 {
		margin: 0 0 20px;
		font-size: 2.0rem;
	}

	.product_detail_info .btn {
		width: 100%;
	}

	.product_detail_info .btn a {
		text-align: center;
		font-size: 2.0rem;
		padding: 30px 75px 30px 35px;
	}

	.product_detail_info .btn .btn-loading {
		width: 70px;
		height: 70px;
	}

	.product_detail_info .btn .btn-loading .inner {
		width: 68px;
		height: 68px;
	}

	.product_detail_info .btn .btn-loading .inner img {
		width: 26px;
	}

	.product_detail_info .btn a:hover .btn-loading .inner {
		width: 68px;
		height: 68px;
	}

	.product_detail_info .btn_estimate {
		margin: 60px 0 0;
	}

	.product_detail_info .btn_estimate a {
		padding: 35px 0;
		font-size: 2.0rem;
	}

	.product_detail_info .btn_estimate a:hover {
		background-image: linear-gradient( 90deg, rgba(31,182,165,1) 0%, rgb(10,128,195) 100%);
	}

}

.product_detail_info_box {
	margin: 0 0 25px;
	padding: 15px 20px 20px;
	background: #fff;
	border-radius: 10px;
}

.product_detail_info_box dl:nth-child(2) {
	margin-top: 15px;
	padding-top: 15px;
	border-top: 1px solid #99b4b0;
}

.product_detail_info_box dt {
	margin: 0 0 8px;
	font-size: 1.4rem;
	line-height: 1.4;
}

.product_detail_info_box dt p.note {
	margin: 5px 0 8px;
	font-size: 1.2rem;
	color: #606060;
}

.product_detail_info_box dd {
	font-size: 2.6rem;
	font-weight: bold;
	color: var(--p_color);
}

.product_detail_info_box dd span {
	font-size: 2.0rem;
}

.product_detail_info_box dd span.tax {
	font-size: 1.4rem;
	font-weight: 400;
}

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

	.product_detail_info_box {
		margin: 0 0 40px;
		padding: 30px 20px 30px 30px;
		border-radius: 20px;
	}

	.product_detail_info_box dl {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.product_detail_info_box dt {
		margin: 0 10px 0 0;
		font-size: 1.6rem;
	}

	.product_detail_info_box dt p.note {
		margin: 8px 0 0;
	}

	.product_detail_info_box dd {
		font-size: 3.0rem;
		white-space: nowrap;
	}

	.product_detail_info_box dd span {
		font-size: 2.4rem;
	}

	.product_detail_info_box dd span.tax {
		font-size: 1.6rem;
	}

}

.entry_column .product_2box ul,
.entry_column .product_3box ul {
	margin: 30px 0 0;
}

.entry_column .product_2box li,
.entry_column .product_3box li {
	margin: 0 0 40px;
	padding: 30px;
	position: relative;
	background-image: linear-gradient( 0deg, rgb(47,186,175) 0%, rgba(48,166,195,1) 100%);
	border-radius: 20px;
	text-align: center;
}

.product_2box li::before,
.product_3box li::before {
	position: absolute;
	content: '';
	top: 2px;
	left: 2px;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	background: #fff;
	border-radius: 18px;
	z-index: 1;
}

.product_2box li::after,
.product_3box li::after {
	display: none;
}

.entry_column .product_2box li h3,
.entry_column .product_3box li h3 {
	margin: 0 0 20px;
	padding: 60px 0 0;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4;
	color: #e57393;
	z-index: 2;
	position: relative;
}

.entry_column .product_2box li h3.icon1,
.entry_column .product_3box li h3.icon1 {
	background: url(../images/category/lunas/icon1.png) no-repeat center top / 48px auto;
}

.entry_column .product_2box li h3.icon2,
.entry_column .product_3box li h3.icon2 {
	background: url(../images/category/lunas/icon2.png) no-repeat center top / 27px auto;
}

.entry_column .product_2box li h3.icon3,
.entry_column .product_3box li h3.icon3 {
	background: url(../images/category/lunas/icon3.png) no-repeat center top / 51px auto;
}

.entry_column .product_2box li h3 span,
.entry_column .product_3box li h3 span {
	font-size: 2.2rem;
	display: block;
}

.entry_column .product_2box li figure,
.entry_column .product_3box li figure {
	position: relative;
	z-index: 2;
}

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

	.entry_column .product_2box ul,
	.entry_column .product_3box ul {
		margin: 50px 0 0;
		display: flex;
		justify-content: space-between;
	}

	.entry_column .product_2box li {
		margin: 0;
		width: calc(50% - 30px);
	}

	.entry_column .product_3box li {
		margin: 0;
		width: calc(33.3333% - 27px);
	}

	.entry_column .product_2box li h3,
	.entry_column .product_3box li h3 {
		padding: 70px 0 0;
		font-size: 2.2rem;
	}

	.entry_column .product_2box li h3.icon1,
	.entry_column .product_3box li h3.icon1 {
		background: url(../images/category/lunas/icon1.png) no-repeat center top / 60px auto;
	}

	.entry_column .product_2box li h3.icon2,
	.entry_column .product_3box li h3.icon2 {
		background: url(../images/category/lunas/icon2.png) no-repeat center top / 34px auto;
	}

	.entry_column .product_2box li h3.icon3,
	.entry_column .product_3box li h3.icon3 {
		background: url(../images/category/lunas/icon3.png) no-repeat center top / 64px auto;
	}

	.entry_column .product_2box li h3 span,
	.entry_column .product_3box li h3 span {
		font-size: 2.6rem;
	}

}

.lineup {
	margin: 2px 5px 0;
}

.lineup .inner {
	padding: 55px 0 230px;
	border-radius: 0 0 50px 50px;
	background: #eff6f5;
	position: relative;
}

.lineup .inner::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	right: 0;
	width: 150px;
	height: 10px;
	margin: auto;
	border-radius: 0 0 4px 4px;
	background-image: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
}

.lineup h2 {
	margin: 0;
	padding: 0;
	font-size: 2.6rem;
	font-weight: 700;
	text-align: center;
	background: none;
}

.lineup h2::before {
	display: none;
}

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

	.lineup {
		margin: 2px calc(50% - 50vw);
		width: 99.5vw;
	}

	.lineup .inner {
		margin: 0 25px;
		border-radius: 0 0 100px 100px;
		padding: 120px 0 330px;
		width: calc(100% - 40px);
	}

	.lineup h2 {
		font-size: 4.0rem;
	}

}

.lineup ul {
	margin: 40px 30px;
}

.lineup li {
	margin: 0 0 30px;
	border-radius: 10px;
	background-image: linear-gradient( 0deg, rgba(48,186,195,1) 0%, rgb(47,186,139) 100%);
}

.lineup li a {
	margin: 1px;
	padding: 20px;
	display: inline-block;
	background: #eff6f5;
	border-radius: 9px;
	width: calc(100% - 2px);
}

.lineup li p.title_tag {
	position: absolute;
	top: -24px;
	left: 0px;
	padding: 5px 15px 8px;
	font-size: 1.6rem;
	font-weight: 700;
	color: #fff;
	display: inline-block;
	border-radius: 10px 10px 10px 0;
	background: var(--p_color);
}

.lineup li h3 {
	margin: 0;
	padding: 15px 70px 15px 0;
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--p_color);
	position: relative;
	background: url(../images/common/btn_circle.png) no-repeat right center / 50px auto;
}

.lineup li h3::after {
	position: absolute;
	content: '';
	left: -20px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 5px;
	height: 50px;
	border-radius: 0 3px 3px 0;
	background-image: linear-gradient( 90deg, rgba(11,129,116,0.99608) 0%, rgb(11,90,135) 100%);
}

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

	.lineup ul {
		margin: 80px auto 60px;
		width: min(95%,1100px);
		display: grid;
		justify-content: center;
		grid-template-columns: repeat(auto-fit, 340px);
		gap: 40px;
	}

	.lineup li {
		margin: 0 0px;
		width: 100%;
		position: relative;
		top: 0;
		background-image: linear-gradient( 0deg, rgba(48,186,195,1) 0%, rgb(47,186,139) 100%);
		transition: top 0.25s ease 0s;
	}

	.lineup li a {
		margin: 1px;
		padding: 35px 40px;
		height: calc(100% - 2px);
		transition: top 0.25s ease 0s;
	}

	.lineup li h3::after {
		left: -41px;
		transition: top 0.25s ease 0s;
	}

}

.lineup figure {
	margin: 20px 0;
	text-align: center;
}

.lineup figure img {
	height: 290px;
	width: auto;
}

.lineup p {
	margin: 0;
	font-size: 1.6rem;
}

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

	.lineup figure {
		margin: 30px 0;
	}

	.lineup li:hover {
		top: -7px;
	}

	.lineup li:hover a {
		margin: 2px;
		padding: 33px 38px;
		height: calc(100% - 4px);
		width: calc(100% - 4px);
	}

	.lineup li:hover h3 {
		color: #0c6ea4;
		background: url(../images/common/btn_circle_ov.png) no-repeat right 1px center / 50px auto;
	}

	.lineup li:hover h3::after {
		left: -40px;
    	background-image: linear-gradient( 90deg, rgba(10,128,195,1) 0%, rgb(30,181,166) 100%);
	}

}

.lineup + .contact_parts {
	margin-top: -210px;
}

.contact_parts {
	margin: 50px 30px 0;
	position: relative;
}

.contact_parts h3 {
	margin: 0 0 20px;
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.5;
	font-weight: 700;
}

.contact_parts h3 em {
	color: #d62e8b;
}

.contact_parts > p.note {
	margin: -15px 0 20px;
	font-size: 1.4rem;
	text-align: center;
}

.contact_parts .contact_column {
	padding: 30px 20px 10px;
	border-radius: 30px;
	background-image: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
}

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

	.lineup + .contact_parts {
		margin-top: -260px;
	}

	.contact_parts {
		margin: 120px auto 0;
		width: min(95%,1190px);
	}

	.contact_parts h3 {
		margin: 0 0 50px;
		font-size: 2.4rem;
	}

	.contact_parts > p.note {
		margin: -45px 0 50px;
		font-size: 2.0rem;
	}

	.contact_parts .contact_column {
		padding: 60px;
		display: flex;
		justify-content: space-between;
		align-items: center;
		border-radius: 50px;
	}

}

.contact_parts .column_btn {
	border: 1px solid #fff;
	border-radius: 20px;
	background-image: linear-gradient( 90deg, rgba(195,32,121,1) 0%, rgb(227,43,91) 100%);
}

.contact_parts .column_btn a {
	padding: 25px 30px;
	display: block;
	position: relative;
}

.contact_parts .column_btn h4 > span {
	margin: 0 0 10px 10px;
	font-size: 1.6rem;
	display: block;
}

.contact_parts .column_btn h4 span span {
	display: inline-block;
	position: relative;
}

.contact_parts .column_btn h4 span span::before,
.contact_parts .column_btn h4 span span::after {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	margin: auto;
	width: 2px;
	height: 20px;
	background: #fff;
}

.contact_parts .column_btn h4 span span::before {
	left: -10px;
	transform: rotate(-24deg);
}

.contact_parts .column_btn h4 span span::after {
	right: -10px;
	transform: rotate(24deg);
}

.contact_parts .column_btn h4 {
	color: #fff;
	font-size: 2.6rem;
	font-weight: 700;
}

.contact_parts .column_btn .btn {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	width: 50px;
	height: 50px;
	margin: auto;
	border: 1px solid #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}

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

	.contact_parts .column_btn {
		margin: 0 6% 0 0;
		width: 48%;
		flex-shrink: 0;
		text-align: center;
		transition: all 0.25s ease 0s;
	}

	.contact_parts .column_btn a {
		padding: 35px 0;
	}

	.contact_parts .column_btn h4 > span {
		margin: 0 0 15px;
		font-size: 3.0rem;
	}

	.contact_parts .column_btn h4 span span::before,
	.contact_parts .column_btn h4 span span::after {
		height: 35px;
	}

	.contact_parts .column_btn h4 span span::before {
		left: -18px;
	}

	.contact_parts .column_btn h4 span span::after {
		right: -18px;
	}

	.contact_parts .column_btn h4 {
		font-size: 5.0rem;
	}

	.contact_parts .column_btn .btn {
		right: 40px;
	}

	.contact_parts .column_btn:hover {
		opacity: 0.7;
	}

}

.contact_parts .column_img {
	margin: 0 0 15px;
}

.contact_parts .column_img a {
	padding: 25px 25px;
	display: block;
	border-radius: 20px;
	background: url(../images/common/contact_img.png) no-repeat center center / cover;
}

.contact_parts .column_img h4 {
	margin: 0 auto;
	padding: 15px 0;
	font-size: 2.0rem;
	font-weight: 700;
	color: #fff;
	text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
	background: url(../images/common/btn_circle_w.png) no-repeat right center / 50px auto;
}

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

	.contact_parts .column_img {
		margin: 0 6% 0 0;
		width: 48%;
		flex-shrink: 0;
	}

	.contact_parts .column_img a {
		padding: 0;
		height: 205px;
		border-radius: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		background: url(../images/common/contact_img.png) no-repeat center center / cover;
	}

	.contact_parts .column_img h4 {
		font-size: 4.0rem;
		width: 80%;
	}

}

.contact_parts .column_contact .btn_tel {
	margin: 20px 0;
	white-space: nowrap;
}

.contact_parts .column_contact .btn_tel a {
	padding: 10px 0 10px 50px;
	padding-left: 50px;
	color: #fff;
	font-size: 3.0rem;
	font-weight: 700;
	background: url(../images/common/ico_tel_w.svg) no-repeat 0 center / 40px auto;
}

.contact_parts .column_contact .btn_contact {
	margin: 20px 0;
}

.contact_parts .column_contact .btn_contact a {
	padding: 20px 0;
	display: block;
	background: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--p_color);
	text-align: center;
	width: 100%;
	border-radius: 50px;
}

.contact_parts .column_contact h4 {
	margin: 20px 0 0;
	text-align: center;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	position: relative;
	display: flex;
	align-items: center;
}

.contact_parts .column_contact h4::before,
.contact_parts .column_contact h4::after {
	content: "";
	flex-grow: 1;
	height: 1px;
	background: #fff;
	display: block;
}

.contact_parts .column_contact h4::before {
	margin-right: 0.8em;
}

.contact_parts .column_contact h4::after {
	margin-left: 0.8em;
}

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

	.contact_parts .column_contact {
		width: 46%;
	}

	.contact_parts .column_contact .btn_tel {
		margin: 0 0 30px;
	}

	.contact_parts .column_contact .btn_tel a {
		padding: 0 0 0 70px;
		font-size: 6.0rem;
		background: url(../images/common/ico_tel_w.svg) no-repeat 0 center / 58px auto;
	}

	.contact_parts .column_contact .btn_contact {
		margin: 30px 0 0;
	}

	.contact_parts .column_contact .btn_contact a {
		padding: 22px 0;
		font-size: 2.0rem;
		transition: all 0.25s ease 0s;
	}

	.contact_parts .column_img a:hover,
	.contact_parts .column_contact .btn_contact a:hover {
		opacity: 0.7;
	}

	.contact_parts .column_contact h4 {
		margin: 35px 0 20px;
		font-size: 2.4rem;
	}

}

.contact_parts .trial .column_contact .btn_tel {
	margin: 5px 0 20px;
}


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

	.contact_parts .contact_column.trial .column_contact {
		margin: 0 30px;
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
	}

	.contact_parts .trial .column_contact .btn_tel {
		margin: 0;
		width: 50%;
	}

	.contact_parts .trial .column_contact .btn_contact {
		margin: 0;
		width: calc(50% - 20px);
	}

}

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

	.contact_parts .contact_column {
		padding-left: 40px;
		padding-right: 40px;
	}

	.contact_parts .column_img {
		margin-right: 2.5%;
		width: 40%;
	}

	.contact_parts .column_contact {
		width: 57.5%;
	}

	.contact_parts .column_contact .btn_tel a {
    	padding: 0 0 0 60px;
    	font-size: 5.0rem;
		background-size: 50px;
	}

}

/* ---------------------
	トイレアドバイザー
---------------------- */

.advisor .page_header .page_header_box {
	height: auto;
	position: relative;
}

.advisor .page_header_box h1 {
	border-radius: 18px;
	overflow: hidden;
}

.advisor .page_header_box .btn {
	position: absolute;
	margin: 0 20px;
	width: calc(100% - 40px);
	bottom: 17px;
}

.advisor .page_header_box .btn a {
	padding: 13px 50px 13px 35px;
	font-size: 1.8rem;
	font-weight: bold;
}

.advisor .page_header_box .btn span {
	font-size: 1.6rem;
}

.advisor_column1 {
	margin: 20px 15px 0;
}

.advisor_column1 .advisor_2column,
.advisor_column2 .advisor_2column {
	align-items: center;
}

.advisor_column1 h2 {
	margin: 0 0 15px;
	padding: 0 0 35px;
	font-size: 1.8rem;
	background: url(../images/advisor/line_sp.png) no-repeat 0 bottom / 100% auto;
}

.advisor_column1 h2::before {
	display: none;
}

.advisor_column1 h2 em {
	margin: 5px 0 0;
	display: block;
	font-size: 2.6rem;
	color: #0b7bc6;
}

.advisor_column1 figure {
	margin: 0 25px;
}

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

	.advisor .page_header {
		padding-bottom: 120px;
		height: auto;
	}

	.advisor .page_header_box .btn {
		position: absolute;
		top: 27.5vw;
		left: 50%;
		margin: 0;
		width: auto;
	}

	.advisor .page_header_box .btn a {
		padding: 18px 75px 18px 35px;
		font-size: 2.4rem;
	}

	.advisor_column1 {
		margin: 0;
		background: url(../images/advisor/line_pc.png) no-repeat 0 bottom / 100% auto;
	}

	.advisor_column1 .advisor_2column,
	.advisor_column2 .advisor_2column {
		align-items: center;
	}

	.advisor_column1 h2 {
		margin: 0 -60px 0 0;
		padding: 0;
		font-size: 2.4rem;
		background: none;
	}

	.advisor_column1 h2 em {
		font-size: 5.0rem;
	}

	.advisor_column1 figure {
		margin: 0 70px 0 0;
		max-width: 400px;
		flex-shrink: 0;
	}

	.advisor_2column {
		display: flex;
		justify-content: space-between;
	}

	.advisor_2column > * {
		width: calc(50% - 30px);
	}

}

.advisor_column2 {
	margin: -80px -15px 0;
}

.advisor_column2_column {
	padding: 110px 30px 250px;
	border-radius: 50px;
	background: #eff6f5;
}

.advisor_column2 .advisor_2column {
	margin: 0 0 50px;
}

.advisor_column2 figure {
	margin: 0 0 20px;
}

.advisor_column2 figure img {
	border-radius: 20px;
	overflow: hidden;
}

.advisor_column2 figcaption {
	margin: 10px 0 0;
	font-size: 1.42rem;
}

.advisor_column2 h2 {
	margin: 0 0 30px;
	padding: 0;
	background: none;
	font-size: 2.2rem;
}

.advisor_column2 h2 em {
	display: block;
	color: #0b7bc6;
}

.advisor_column2 h2:before {
	display: none;
}

.advisor_column2 p em {
	padding: 0 2px 1px;
	display: inline-block;
	color: #fff;
	background: #d62e8b;
	font-weight: 500;
	line-height: 1.4;
}

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

	.advisor_column2 {
		margin: 0 calc(50% - 50vw);
    	width: 99.5vw;
	}

	.advisor_column2_column {
		margin: 0 25px;
		padding: 120px 0 370px;
		border-radius: 100px;
		width: calc(100% - 40px);
	}

	.advisor_column2 .inner {
		margin: 90px auto 0;
    	width: min(95%,1100px);
	}

	.advisor_column2 .advisor_2column {
		margin: 60px 0;
	}

	.advisor_2column.advisor_2column_img {
		align-items: flex-start;
	}

	.advisor_column2 figure {
		margin: 0;
	}

	.advisor_column2 figcaption {
		font-size: 1.4rem;
	}

	.advisor_column2 h2 {
		margin: 0 -20px 40px 0;
		font-size: 3.8rem;
	}

}

.advisor_contact {
	margin: 0 30px;
	padding: 30px 0 25px;
	background-image: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
	text-align: center;
	border-radius: 30px;
}

.advisor_column2 .advisor_contact {
	margin-top: -235px;
}

.advisor_contact .advisor_contact_up {
	padding: 0 20px 20px;
	border-bottom: 1px solid #85b3c0
}

.advisor_contact .advisor_contact_up h3 {
	margin: 0 -10px;
	padding: 0;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.6;
}

.advisor_contact .advisor_contact_up h3 em {
	margin: 5px;
	padding: 2px 6px 4px;
	display: inline-block;
	background: #fff;
	color: #0b7bc6;
	border-radius: 5px;
}

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

	.advisor_contact {
		margin: 0 auto;
		padding: 50px 60px 25px;
    	width: min(95%,1190px);
		border-radius: 40px;
	}

	.advisor_contact .advisor_contact_up {
		padding: 0 0 40px;
	}

	.advisor_contact .advisor_contact_up h3 {
		margin: 0;
		font-size: 2.4rem;
	}

	.advisor_contact .advisor_contact_up h3 em {
		margin: 10px 7px;
		padding: 8px 10px 10px;
		border-radius: 8px;
	}

}

.advisor_contact .advisor_contact_bottom {
	margin: 25px 20px 10px;
}

.advisor_contact .advisor_contact_bottom .btn_tel {
	margin: 0 0 25px;
	white-space: nowrap;
}

.advisor_contact .advisor_contact_bottom .btn_tel a {
	padding: 5px 0 5px 50px;
	color: #fff;
	font-weight: 700;
	font-size: 3.0rem;
	background: url(../images/common/ico_tel_w.svg) no-repeat 0 center / 40px auto;
}

.advisor_contact .advisor_contact_bottom .btn_contact {
	margin: 0;
}

.advisor_contact .advisor_contact_bottom .btn_contact h4 {
	margin: 0;
	padding: 5px 10px;
	color: #d62e8b;
	font-size: 1.2rem;
	font-weight: 700;
	background: #fff;
	border: 2px solid #d62e8b;
	border-radius: 20px;
	display: inline-block;
}

.advisor_contact .advisor_contact_bottom .btn_contact a {
	margin: -14px 0 0;
	padding: 25px 0;
	display: block;
	background: #fff;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--p_color);
	text-align: center;
	width: 100%;
	border-radius: 50px;
}

.advisor_column2 p.note,
.advisor_column3 p.note,
.advisor_column4 p.note {
	margin: 10px 0 0;
	text-align: center;
	font-size: 1.2rem;
	color: #333;
}

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

	.advisor_contact .advisor_contact_bottom {
		margin: 30px 0px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.advisor_contact .advisor_contact_bottom .btn_tel {
		margin: 15px 0 0;
		width: 50%;
	}

	.advisor_contact .advisor_contact_bottom .btn_tel a {
		padding: 0 0 0 70px;
		font-size: 6.0rem;
		background: url(../images/common/ico_tel_w.svg) no-repeat 0 center / 58px auto;
	}

	.advisor_contact .advisor_contact_bottom .btn_contact {
		width: calc(50% - 20px);
		transition: all 0.25s ease 0s;
	}

	.advisor_contact .advisor_contact_bottom .btn_contact:hover {
		opacity: 0.7;
	}

	.advisor_contact .advisor_contact_bottom .btn_contact h4 {
		padding: 5px 15px;
		font-size: 1.8rem;
		font-weight: 600;
		border-radius: 10px;
	}

	.advisor_contact .advisor_contact_bottom .btn_contact a {
		margin: -20px 0 0;
		padding: 32px 0;
		font-size: 2.0rem;
	}

	.advisor_column2 p.note,
	.advisor_column3 p.note,
	.advisor_column4 p.note {
		margin: 15px 0 0;
		font-size: 1.4rem;
	}

}

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

	.advisor_contact .advisor_contact_bottom {
		flex-wrap: wrap;
		flex-direction: column;
		justify-content: center;
	}

	.advisor_contact .advisor_contact_bottom .btn_tel {
		margin-bottom: 30px;
		width: auto;
	}

}

.advisor .entry_column .top_nayami {
	margin: 55px 0;
}

.advisor .entry_column .top_nayami .inner {
	margin: 0 auto;
	width: auto;
}

.advisor .entry_column .top_nayami h2 {
	margin: 0 0 30px;
	padding: 0;
	text-align: center;
	font-size: 2.0rem;
	font-weight: 700;
	line-height: 1.4;
	background: none;
}

.advisor .entry_column .top_nayami h2 em {
	display: inline;
}

.advisor .entry_column .top_nayami h2::before {
	display: none;
}

.advisor .entry_column .top_nayami ul {
	margin: 0;
}

.advisor .entry_column .top_nayami li {
	margin: 0 0 20px;
	padding: 15px 20px 20px;
}

.advisor .entry_column .top_nayami li::after {
	display: none;
}

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

	.advisor .entry_column .top_nayami {
		margin: 110px 0;
	}

	.advisor .entry_column .top_nayami h2 {
		margin: 0 0 55px;
		font-size: 4.0rem;
		line-height: 1.2;
	}

	.advisor .entry_column .top_nayami li {
		margin: 0;
		padding: 0;
	}

}

.advisor_no_title {
	text-align: center;
}

.advisor_no_title .no {
	margin: 0 0 30px;
	padding: 0 0 10px;
	color: var(--p_color);
	font-size: 2.0rem;
	font-weight: 600;
	position: relative;
	font-family: 'Roboto', sans-serif;
	display: inline-block;
	background: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.advisor_no_title .no::after {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 25px;
	height: 3px;
	background: linear-gradient( 90deg, rgba(11,129,116,1) 0%, rgb(11,90,135) 100%);
	border-radius: 3px;
}

.entry_column .advisor_no_title h2 {
	margin: 0 0 50px;
	padding: 0;
	font-size: 2.0rem;
	background: none;
}

.entry_column .advisor_no_title h2:before{
	display: none;
}

.advisor_no_title h2 em {
	font-size: 2.8rem;
	color: var(--p_color);
}

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

	.advisor_no_title .no {
		margin: 0 0 40px;
		font-size: 4.0rem;
		font-weight: 500;
	}

	.advisor_no_title .no::after {
		height: 5px;
	}

	.entry_column .advisor_no_title h2 {
		margin: 0 0 55px;
		font-size: 4.0rem;
	}

	.advisor_no_title h2 em {
		font-size: 6.0rem;
	}

}

.advisor_column3 > figure {
	margin: 0 auto 20px;
}

.advisor_column3 figure {
	margin: 0 0 30px;
	border-radius: 20px;
	overflow: hidden;
}

.advisor_column3 h3 {
	font-size: 1.8rem;
	text-align: center;
}

.advisor_column3 h3 em {
	font-size: 2.2rem;
	color: #d62e8b;
}

.advisor_column3 .advisor_contact,
.advisor_column4 .advisor_contact {
	margin: 60px 15px 0;
}

.advisor_column3 .advisor_contact h3 {
	text-align: left;
}

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

	.advisor_column3 > figure {
		margin: 0 auto 60px;
		width: 640px;
	}

	.advisor_column3 figure {
		border-radius: 20px;
	}

	.advisor_column3 h3 {
		font-size: 3.0rem;
	}

	.advisor_column3 h3 em {
		font-size: 4.0rem;
	}

	.advisor_column3 .advisor_contact_outer,
	.advisor_column4 .advisor_contact_outer {
		margin: 120px -45px 0;
		width: calc(100% + 90px);
	}

	.advisor_column3 .advisor_contact,
	.advisor_column4 .advisor_contact {
		margin: 0 auto;
		width: min(100%,1190px);
	}

	.advisor_column3 .advisor_contact h3 {
		text-align: center;
	}

}

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

		.advisor_column3 .advisor_contact_outer,
		.advisor_column4 .advisor_contact_outer {
			margin-left: 0px;
			margin-right: 0px;
			width: 100%;
		}

}

.advisor_column4 {
	margin: 55px 0 0;
}

.advisor_blue_column {
	margin: 0 0 20px;
	padding: 30px 0 10px;
	border-radius: 20px;
	background: #f3f9ff;
}

.advisor_blue_column h3 {
	margin: 0;
	padding: 0 0 0 20px;
	font-size: 1.8rem;
	position: relative;
}

.advisor_blue_column h3::after {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 5px;
	height: 30px;
	border-radius: 0 3px 3px 0;
	background-image: linear-gradient( 90deg, rgba(11,129,116,0.99608) 0%, rgb(11,90,135) 100%);
}

.advisor_blue_column .advisor_2column {
	margin: 30px 20px 0;
}

.advisor_blue_column .advisor_2column > * {
	margin: 0 0 20px;
}

.advisor_blue_column .advisor_2column figcaption {
	margin: 10px 0 25px;
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
}

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

	.advisor_column4 {
		margin: 100px 0 0;
	}

	.advisor_blue_column {
		margin: 0 0 60px;
		padding: 60px 0;
		border-radius: 30px;
	}

	.advisor_blue_column h3 {
		padding: 0 0 0 60px;
		font-size: 2.6rem;
	}

	.advisor_blue_column h3::after {
		height: 50px;
	}

	.advisor_blue_column .advisor_2column {
		margin: 40px 60px 0;
	}

	.advisor_blue_column .advisor_2column > * {
		margin: 0;
		width: calc(50% - 20px);
	}

	.advisor_blue_column .advisor_2column figcaption {
		margin: 15px 0 0;
		font-size: 1.8rem;
	}

}

.advisor_column5 {
	margin: 55px 0;
}

.advisor_column5 .category_entry_column {
	margin: 50px 0;
}

.advisor_column5 .category_entry_column li {
	margin: 0 0 55px;
	padding: 0;
}

.advisor_column5 .category_entry_column li a {
	padding-top: 30px;
	padding-bottom: 10px;
}

.advisor_column5 .category_entry_column li::after {
	display: none;
}

.advisor_column5 .category_entry_column li p.title_tag {
	position: absolute;
	top: -24px;
	left: -2px;
	padding: 5px 15px 8px;
	font-size: 1.6rem;
	font-weight: 700;
	color: #fff;
	display: inline-block;
	border-radius: 10px 10px 10px 0;
	background: var(--p_color);
}

.advisor_column5 .category_entry_column li figure {
	margin-bottom: 20px;
}

.advisor_column5 .category_entry_column li ul {
	margin: 0;
	padding: 0;
}

.advisor_column5 .category_entry_column li ul li {
	margin: 12px 0;
	padding: 0 0 0 15px;

}
.advisor_column5 .category_entry_column li ul li::after {
	display: block;
}

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

	.advisor_column5 {
		margin: 100px 0;
	}

	.advisor_column5 .category_entry_column {
		margin: 80px 0;
	}

	.advisor_column5 .category_entry_column li {
		margin: 0 0 30px;
	}

	.advisor_column5 .category_entry_column li a {
		padding-top: 20px;
		padding-bottom: 25px;
	}

}

.advisor_column6 {
	margin: 0 -20px;
}

.advisor_column6_back {
	padding: 80px 20px 0;
	background: url(../images/advisor/advisor_column6_back_sp.jpg) no-repeat center 0 / cover;
}

.advisor_column6_back figure {
	margin: 30px 20px 0;
}

.advisor_column6_box {
	padding: 30px 30px 40px;
	border-radius: 20px;
 	background: rgba(255,255,255,0.8);
}

.advisor_column6_box h3 {
	margin: 0 0 15px;
	padding: 0;
	font-size: 2.0rem;
	line-height: 1.4;
}

.advisor_column6_box h3 em {
	color: var(--p_color);
}

.advisor_column6 .advisor_contact {
	margin-top: 60px;
	padding: 10px 5px 25px;
}

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

	.advisor_column6 {
		margin: 0 calc(50% - 50vw);
		width: 99.5vw;
	}

	.advisor_column6_back {
		margin: 0 auto;
		padding: 0;
		height: 400px;
		background: url(../images/advisor/advisor_column6_back_pc.jpg) no-repeat center center / cover;
	}

	.advisor_column6_back .inner {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.advisor_column6_back figure {
		margin: -67px 40px 0 0;
		width: 457px;
		flex-shrink: 0;
		order: 1;
	}

	.advisor_column6_box {
		padding: 30px 40px 40px;
		order: 2;
	}

	.advisor_column6_box h3 {
		margin: 0 0 20px;
		font-size: 3.0rem;
	}

	.advisor_column6 .advisor_contact {
		margin-top: 130px;
		padding: 10px 60px 20px;
	}

}

.btn_green {
	margin: 20px 0 40px;
}

.btn_white {
	margin: 40px 0;
}

.btn_white a,
.btn_green a,
.advisor_column6_box .btn a {
	padding: 25px 25px;
	color: #fff;
	font-size: 1.6rem;
	line-height: 1.4;
	font-weight: 600;
	display: block;
	text-align: left;
	background: var(--p_color);
	border-radius: 50px;
	position: relative;
}


.btn_white a {
	background: #fff;
	color: #d62e8b;
	border: 2px solid #d62e8b;
}

.btn_white .btn-loading {
	background: #ffcee9;
}

.btn_white .btn-loading .inner {
	background: #fff;
}

.btn_white .btn-loading .inner .arrow_white {
	display: none;
}

.btn_white a,
.btn_green a {
	text-align: left;
	padding: 12px 75px 12px 25px;
}

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

	.btn_center {
		text-align: center;
	}

	.btn_white,
	.btn_green {
		margin: 10px 0 0;
		display: inline-block;
	}

	.advisor_column6_box .btn a {
		padding: 25px 0;
		text-align: center;
		transition: all 0.25s ease 0s;
	}

	.btn_white a,
	.btn_green a {
		text-align: left;
		padding: 22px 75px 22px 35px;
		transition: all 0.25s ease 0s;
	}

	.btn_green a:hover,
	.advisor_column6_box .btn a:hover {
		background: #1aaaab;
	}

	.btn_white a:hover {
		background: #d62e8b;
		color: #fff;
	}

	.btn.btn_white a:hover .btn-loading .inner {
		background: #d62e8b;
	}

	.btn_white a:hover .btn-loading .inner .arrow_pink {
		display: none;
	}

	.btn_white a:hover .btn-loading .inner .arrow_white {
		display: block;
	}

}

.btn-loading {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	width: 50px;
	height: 51px;
	position: absolute;
	right: 10px;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: all 0.20s;
	background-color: #bbe4de;
	border-radius: 100%;
	overflow: hidden;
}

.btn-loading:before,
.btn-loading:after {
	content: "";
	display: block;
	position: absolute;
	width: 50%;
	height: 0;
	background-color: #fff;
	pointer-events: none;
}

.btn-loading:before {
	bottom: 0;
	left: 0;
}

.btn-loading:after {
	top: 0;
	right: 0;
}

.btn-loading .inner {
	margin: 1px;
	width: 49px;
	height: 49px;
	border-radius: 50%;
	background-color: var(--p_color);
	transition: all 0.20s;
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
}

.btn-loading img {
	position: relative;
	z-index: 3;
}

.btn_white .btn-loading {
	width: 35px;
	height: 35px;
}

.btn_white .btn-loading .inner {
	width: 34px;
	height: 34px;
}

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

	.btn a:hover .btn-loading:before,
	.btn a:hover .btn-loading:after {
		height: 100%;
	}

	.btn a:hover .btn-loading:before {
		transition: height 0.15s 0.15s linear;
	}

	.btn a:hover .btn-loading:after {
		transition: height 0.15s linear;
	}

	.btn a:hover .btn-loading .inner {
		margin: 2px;
		width: 48px;
		height: 48px;
		background: #1aaaab;
	}

	.btn_white {
		width: auto;
	}

	.btn_white .btn-loading {
		width: 50px;
		height: 50px;
	}

	.btn_white .btn-loading .inner {
		width: 48px;
		height: 48px;
	}

}


/* -----------------
	カラム設定
----------------- */

.column_clear {
  clear: both;
}

.column1_center {
  margin-bottom: 30px;
}

.column2_left_sp2,
.column2_right_sp2,
.column2_left,
.column2_right,
.column2_left_small,
.column2_right_large,
.column2_left_large,
.column2_right_small {
  margin-bottom: 30px;
}

.column3_left,
.column3_center,
.column3_right {
  margin-bottom: 30px;
}

.column2_left_sp2 {
	width: calc(50% - 10px);
	float: left;
}

.column2_right_sp2 {
	width: calc(50% - 10px);
	float: right;
}

.column-map-left,
.column-map-right,
.column-media-left,
.column-video-left,
.column-media-right,
.column-video-right {
	float: none;
}

.entry_column [class*="column-map"],
.entry_column [class*="column-media"],
.entry_column [class*="column-video"] {
	margin-bottom: 20px;
}

.entry_column [class*="column1_"] [class*="column-map"],
.entry_column [class*="column2_"] [class*="column-map"],
.entry_column [class*="column3_"] [class*="column-map"],
.entry_column [class*="column1_"] [class*="column-video"],
.entry_column [class*="column2_"] [class*="column-video"],
.entry_column [class*="column3_"] [class*="column-video"],
.entry_column [class*="column1_"] [class*="column-media"],
.entry_column [class*="column2_"] [class*="column-media"],
.entry_column [class*="column3_"] [class*="column-media"] {
	margin-bottom: 20px;
}


.column-video-auto iframe,
.column-video-left iframe,
.column-video-right iframe,
.column-video-center iframe {
	width: 100%;
}

.column_border {
	padding: 20px 30px;
	clear: both;
	border: 3px solid #daebe9;
	border-radius: 10px;
}

.column_border [class*="column-media"] {
	margin: 0;
}

.column_center {
	text-align: center;
}

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

  .column2_left {
    margin-right: 60px;
    float: left;
    width: 520px;
  }

  .column2_right {
    float: left;
    width: 520px;
  }

  .column3_left {
    margin-right: 40px;
    float: left;
    width: 340px;
  }

  .column3_center {
    margin-right: 40px;
    float: left;
    width: 340px;
  }

  .column3_right {
    float: left;
    width: 340px;
  }

  .column2_left_small {
    margin-right: 60px;
    float: left;
    width: 430px;
  }

  .column2_right_large {
    float: left;
    width: 610px;
  }

  .column2_left_large {
    margin-right: 60px;
    float: left;
    width: 610px;
  }

  .column2_right_small {
    float: left;
    width: 430px;
  }

  .column2_left_sp2,
  .column2_right_sp2,
  .column2_left,
  .column2_right,
  .column2_left_small,
  .column2_right_large,
  .column2_left_large,
  .column2_right_small {
    margin-bottom: 80px;
  }

  .column3_left,
  .column3_center,
  .column3_right {
    margin-bottom: 50px;
  }

  .column1_center {
		margin: 0 auto 50px;
    width: 340px;
  }

  .column-map-left,
  .column-media-left,
  .column-video-left {
    margin-right: 50px;
    float: left;
  }

  .column-map-right,
  .column-media-right,
  .column-video-right {
    margin-left: 50px;
    float: right;
  }

  .entry_column [class*="column-map"],
  .entry_column [class*="column-media"],
  .entry_column [class*="column-video"] {
    margin-bottom: 50px;
  }

  .entry_column [class*="column1_"] .column-map-auto,
  .entry_column [class*="column1_"] .column-map-left,
  .entry_column [class*="column1_"] .column-map-center,
  .entry_column [class*="column1_"] .column-map-right,
  .entry_column [class*="column1_"] .column-map-auto,
  .entry_column [class*="column1_"] .column-map-left,
  .entry_column [class*="column1_"] .column-map-center,
  .entry_column [class*="column1_"] .column-map-right,
  .entry_column [class*="column2_"] .column-map-auto,
  .entry_column [class*="column2_"] .column-map-left,
  .entry_column [class*="column2_"] .column-map-center,
  .entry_column [class*="column2_"] .column-map-right,
  .entry_column [class*="column3_"] .column-map-auto,
  .entry_column [class*="column3_"] .column-map-left,
  .entry_column [class*="column3_"] .column-map-center,
  .entry_column [class*="column3_"] .column-map-right,
  .entry_column [class*="column2_"] .column-media-auto,
  .entry_column [class*="column2_"] .column-media-left,
  .entry_column [class*="column2_"] .column-media-center,
  .entry_column [class*="column2_"] .column-media-right,
  .entry_column [class*="column3_"] .column-media-auto,
  .entry_column [class*="column3_"] .column-media-left,
  .entry_column [class*="column3_"] .column-media-center,
  .entry_column [class*="column3_"] .column-media-right,
  .entry_column [class*="column2_"] .column-video-auto,
  .entry_column [class*="column2_"] .column-video-left,
  .entry_column [class*="column2_"] .column-video-center,
  .entry_column [class*="column2_"] .column-video-right,
  .entry_column [class*="column3_"] .column-video-auto,
  .entry_column [class*="column3_"] .column-video-left,
  .entry_column [class*="column3_"] .column-video-center,
  .entry_column [class*="column3_"] .column-video-right {
  	margin-bottom: 0px;
  }

	.column_border {
		padding: 50px 60px;
	}

}

/* -----------------
	footer
----------------- */

.footer  {
	margin: 80px 0 0;
	text-align: center;
}

.footer_top {
	padding: 0 0 30px;
}

.footer_logo {
	margin: 0 auto;
	width: 176px;
}

.footer_bottom {
	padding: 25px 10px 85px;
	color: #fff;
	background: #5d5d5d;
}

.footer_bottom h3 {
	margin: 0 0 10px;
	font-size: 1.8rem;
	font-weight: 600;
}

.footer_bottom address {
	margin: 0 0 10px;
}

.footer_bottom p {
	margin: 0 0 10px;
	font-size: 1.4rem;
}

.ico_outlink_w {
	padding-right: 20px;
	display: inline-block;
	background: url(../images/common/ico_outlink_w.svg) no-repeat right center / 12px auto;
}

.ico_outlink_w a {
	color: #fff;
}

.footer_bottom .copy p {
	font-size: 1.2rem;
}

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

	.footer  {
		margin: 130px 0 0;
	}

	.footer_bottom {
		padding-bottom: 15px;
	}

	.hv_line {
		position: relative;
	}

	.hv_line::after {
		position: absolute;
		content: '';
		left: 0;
		bottom: -4px;
		width: 0;
		height: 1px;
		background: #fff;
		transition: all 0.25s ease 0s;
	}

	.hv_line:hover::after {
		width: 100%;
	}

}

.product_video {
	margin-bottom: 20px;
	border-radius: 10px;
	padding: 20px;
	border: 1px solid #30a6c3;
}

.product_video video {
	width: 100%;
}

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

	.product_video {
		margin-bottom: 50px;
		padding: 50px;
	}

}


/* -----------------
	お問い合わせ
----------------- */

.form_entry {
}

.form_entry h2 {
	margin: 0 0 45px;
	padding: 0 0 25px;
	text-align: center;
	font-size: 2.6rem;
	font-weight: 700;
	position: relative;
}

.form_entry h2::after{
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 100px;
	height: 8px;
	border-radius: 3px;
	background-image: linear-gradient( 90deg, #0b8174, #125f8a);
}

.form_entry h3 {
	margin: 0 0 25px;
	padding: 0;
	font-size: 2.0rem;
	font-weight: 700;
	background: url(../images/common/h2_line.png) no-repeat 0 center / 1100px auto;
}

.form_entry h3 span {
	padding-right: 10px;
	display: inline-block;
	background: #fff;
}

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

	.form_entry {
		margin: 0 auto;
    	width: min(95%,1100px);
	}

	.form_entry h2 {
		margin: 0 0 50px;
		padding: 0 0 30px;
		font-size: 4.0rem;
	}

	.form_entry h3 {
		margin: 0 0 25px;
		font-size: 2.4rem;
	}

	.form_entry h3 span {
		padding-right: 15px;
	}

}

.form_entry .contact_column {
	margin: 0 0 35px;
}

.form_entry .ipt_check {
	margin: 10px 0;
	font-size: 1.6rem;
}

.form_entry .ipt_check input[type='checkbox'] {
	position: relative;
	width: 25px;
	height: 25px;
	border: 2px solid var(--p_color);
	border-radius: 4px;
	-webkit-appearance: none;
 	-moz-appearance: none;
      	appearance: none;
	flex-shrink: 0;
}

.form_entry .ipt_check input[type="checkbox"]:checked {
	background: var(--p_color);
}

.form_entry .ipt_check input[type="checkbox"]:checked:before {
	position: absolute;
	content: '';
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 25px;
	height: 25px;
	background: url(../images/common/ico_check.png) no-repeat 4px center / 15px auto;
}

.form_entry .ipt_check label {
	display: flex;
}

.form_entry .ipt_check input[type='checkbox'] + span,
.form_entry .ipt_radio input[type='radio'] + span {
	padding-left: 5px;
	line-height: 1.4;
}

.form_entry .ipt_column_radio {
	display: flex;
}

.form_entry .ipt_radio {
	margin: 5px 20px 5px 0;
	font-size: 1.6rem;
}

.form_entry .ipt_radio label {
	padding: 5px 60px 15px 10px;
	border-radius: 30px;
}

.form_entry .ipt_radio label:has(input:checked) {
	background: #eff4f8;
}

.form_entry .ipt_radio input[type="radio"] {
	position: relative;
	top: 5px;
	width: 25px;
	height: 25px;
	border: 2px solid var(--p_color);
	border-radius: 50%;
	vertical-align: -2px;
	-webkit-appearance: none;
 	-moz-appearance: none;
      	appearance: none;
}

.form_entry .ipt_radio input[type="radio"]:checked:before {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: var(--p_color);
	content: '';
}

.form_entry dd select {
	appearance: none;
}

.form_entry dd .form_select {
	position: relative;
	display: inline-block;
}

.form_entry .contact_user_column dd select {
	padding-right: 50px;
	background: #fff;
}

.form_entry dd .form_select::after {
	position: absolute;
	content: '';
	right: 20px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 7px;
	height: 16px;
	background: url(../images/common/ico_select.png) no-repeat 0 0 / 7px auto;
}

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

	.form_entry .contact_column {
		margin: 0 0 40px;
	}

	.form_entry .ipt_column .ipt_list {
		display: flex;
		flex-wrap: wrap;
	}

	.form_entry .ipt_check {
		margin: 8px 50px 8px 0;
		display: inline-block;
	}

	.form_entry .ipt_check:nth-child(4n) {
		margin-right: 0;
	}

	.trial .form_entry .ipt_check:nth-child(3) {
		margin-right: 0;
	}

	.trial .form_entry .ipt_check:nth-child(4) {
		margin-right: 50px;
	}

	.help .form_entry .contact_cate .ipt_check {
		margin: 15px 0;
		display: block;
	}

	.form_entry .ipt_check label,
	.form_entry .ipt_radio label {
    	cursor: pointer;
		display: inline;
	}

	.form_entry .ipt_radio label {
		padding: 5px 70px 15px 10px;
	}

	.form_entry .ipt_check input[type='checkbox'] + span,
	.form_entry .ipt_radio input[type='radio'] + span {
		white-space: nowrap;
	}

}

.form_entry .category_table {
	margin: 30px 0 0;
	width: 100%;
}

.form_entry .category_table tr:nth-child(odd) th {
	background: #eff6f5;
	border-radius: 20px 20px 0 0;
}

.form_entry .category_table tr:nth-child(even) th {
	border-right: 1px solid #eff6f5;
}

.form_entry .category_table tr:nth-child(odd) td {
	background: #eff6f5;
	border-radius: 0 0 20px 20px;
}

.form_entry .category_table th {
	padding: 30px 30px 0;
	text-align: left;
	white-space: nowrap;
	display: block;
	font-size: 1.6rem;
	font-weight: 700;
	border: none;
	color: var(--p_color);
}

.form_entry .category_table td {
	padding: 3px 0 20px 30px;
	display: block;
}

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

	.form_entry .category_table {
		margin: 35px 0 0;
	}

	.form_entry .category_table tr:nth-child(odd) th {
		border-radius: 20px 0 0 20px;
		border-right: 1px solid #fff;
	}

	.form_entry .category_table tr:nth-child(odd) td {
		border-radius: 0 20px 20px 0;
	}

	.form_entry .category_table th {
		padding: 20px 30px;
		display: table-cell;
		width: 25%;
	}

	.form_entry .category_table td {
		padding: 20px 0 20px 30px;
		display: table-cell;
	}

}

.contact_user_column {
	margin: 10px -20px 50px;
	padding: 30px 20px 0;
	border: 5px solid #eff6f5;
	border-radius: 30px;
}

.contact_user_column dl {
	margin: 0 0 30px;
}

.contact_user_column dt {
	margin: 0 0 10px;
	font-size: 1.6rem;
	font-weight: 700;
}

.contact_column h3 .required,
.contact_user_column dt .required {
	margin: 0 0 0 5px;
	padding: 2px 3px 3px;
	font-size: 1.0rem;
	border-radius: 2px;
	font-weight: 600;
	display: inline-block;
	color: #fff;
	background: #ea4646;
}

.contact_column h3 .required {
	position: relative;
	top: -2px;
}

.contact_column h3 .required span {
	padding: 0;
	background: #ea4646;
	line-height: 1.0;
}

.contact_user_column dd label {
	display: block;
}

.contact_user_column dd textarea::placeholder,
.contact_user_column dd input::placeholder {
	color: #999;
}

.contact_user_column dd select,
.contact_user_column dd textarea,
.contact_user_column dd input[type="text"],
.contact_user_column dd input[type="email"] {
	border: 1px solid #c9d6d4;
	font-size: 1.6rem;
	padding: 15px;
	border-radius: 5px;
}

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

	.contact_column h3 .required {
		top: -4px;
	}

	.contact_user_column {
		margin: 60px 0;
		padding: 50px;
	}

	.contact_user_column dd label {
		display: inline-block;
	}

}

.form_entry .contact_sub {
	padding: 20px 10px;
	border-radius: 5px;
	background: #eff6f5;
}

.form_entry .contact_sub p {
	margin: 15px 0 10px;
	font-size: 1.6rem;
	font-weight: 700;
}

.form_entry input[name="company"],
.form_entry input[name="name"],
.form_entry input[name="kana"],
.form_entry input[name="address"],
.form_entry input[name="building"],
.form_entry input[name="tel"],
.form_entry input[name="fax"],
.form_entry input[name="email"],
.form_entry input[name="mailaddressconfirm"] {
	width: 100%;
}

.form_entry textarea {
	width: 100%;
	height: 220px;
	line-height: 1.4;
}

.form_entry p.note {
	margin: 5px 0 0;
	font-size: 1.4rem;
	color: #c64969;
	text-indent: -1em;
	padding-left: 1em;
}

.form_entry .merumaga_ipt_text label {
	display: flex;
}

.form_entry .merumaga_ipt_text label input {
	flex-shrink: 0;
}

.form_entry .merumaga_ipt_text span {
	line-height: 1.4;
}

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

	.contact_user_2column {
		display: flex;
	}

	.contact_user_2column dl {
		margin-right: 30px;
	}

	.form_entry .contact_sub {
		padding: 20px;
		display: inline-block;
	}

	.form_entry input[name="company"] {
		width: 670px;
	}

	.form_entry input[name="name"],
	.form_entry input[name="kana"] {
		width: 400px;
	}

	.form_entry input[name="address"] {
		width: 600px;
	}

	.form_entry input[name="building"] {
		width: 600px;
	}

	.form_entry input[name="tel"],
	.form_entry input[name="fax"] {
		width: 275px;
	}

	.form_entry input[name="email"],
	.form_entry input[name="mailaddressconfirm"] {
		width: 650px;
	}

}

.privacy_area > p {
	margin: 30px 0;
	font-size: 1.6rem;
}

.privacy_area .privacy_frame {
	margin: 0 0 20px;
	padding: 30px 0;
	background: #f6f6f6;
	border-radius: 30px;
}

.privacy_area .privacy_frame .inner {
	padding: 0 20px;
	height: 500px;
	overflow-y: scroll;
}

.privacy_frame h4 {
	margin: 0 0 15px;
	padding: 0;
	font-size: 1.8rem;
	font-weight: 700;
	color: inherit;
	border: none;
}

.privacy_frame h5 {
	margin: 20px 0;
	padding: 5px 0 5px 15px;
	font-size: 1.6rem;
	font-weight: 700;
	border-left: 5px solid var(--p_color);
}

.privacy_frame p {
	margin: 0 0 15px;
}

.privacy_frame ol {
	margin: 20px 0;
	padding: 0;
	list-style: none;
	counter-reset: ol_li;
}

.privacy_frame ol li {
	margin: 0 0 10px;
	padding-left: 30px;
	text-indent: -17px;
	font-size: 1.6rem;
	line-height: 1.4;
	position: relative;
}

.privacy_frame ol li::before {
	counter-increment: ol_li;
	content: counter(ol_li);
	color: var(--p_color);
	left: -12px;
	position: relative;
	font-size: 1.6rem;
	font-weight: 600;
}

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

	.privacy_area > p {
		margin: 0 0 30px;
		text-align: center;
	}

	.privacy_area .privacy_frame {
		margin: 0 0 30px;
		padding: 40px 0;
	}

	.privacy_area .privacy_frame .inner {
		padding: 0 50px;
	}

	.privacy_frame h4 {
		margin: 0 0 30px;
		font-size: 2.0rem;
	}

	.privacy_frame h5 {
		margin: 30px 0 20px;
		font-size: 1.8rem;
	}

	.privacy_frame p {
		margin: 0 0 20px;
	}

	.privacy_frame ol li::before {
		font-size: 1.8rem;
	}

}

.agree_area {
	text-align: center;
}

.agree_area p {
	margin: 0 0 25px;
	font-size: 1.6rem;
	text-align: left;
}

.agree_check_column {
	padding: 15px 20px;
	border: 5px solid #ffe5e5;
	border-radius: 20px;
}

.agree_check_column a {
	text-decoration: underline;
}

.agree_check_column .ipt_check input[type="checkbox"] {
	border-color: #f1525a;
}

.agree_check_column .ipt_check input[type="checkbox"]:checked {
	background: #f1525a;
}

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

	.agree_area p {
		margin: 0 0 30px;
		text-align: center;
	}

	.agree_check_column {
		padding: 28px 20px;
	}

}

.form_btn_box {
	margin: 40px 20px 0;
	text-align: center;
}

.form_btn_box .btn_back,
.form_btn_box .btn_send,
.form_btn_box .btn_confirm {
	color: #fff;
	font-size: 2.0rem;
	font-weight: 700;
	border: none;
	border-radius: 50px;
	background-image: linear-gradient( 90deg, #0b8174, #0b5a87);
	width: 100%;
}

.form_btn_box .btn_back,
.form_btn_box .btn_send {
	margin: 0 0 30px;
}

.form_btn_box .btn_send span,
.form_btn_box .btn_confirm span {
	padding: 25px;
	display: block;
	background: url(../images/common/btn_circle_w.png) no-repeat right 12px center / 50px auto;
}

.form_btn_box .btn_send span {
	padding: 25px 90px 25px 40px;
}

.form_btn_box .btn_back span {
	padding: 25px 40px 25px 90px;
	display: block;
	background: url(../images/common/btn_circle2_w.png) no-repeat 12px center / 50px auto;
}

.form_entry .form_attention {
	margin: 10px 0 0;
	font-size: 1.6rem;
	font-weight: 700;
	color: #c64969;
}

.form_entry_thanks .entry_column .entry_column {
	margin: 0;
}

.form_btn_box_fixed {
	position: fixed;
	bottom: 0;
	left: 0;
	padding: 30px 0;
	background: rgba(255,255,255,0.8);
}

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

	.form_btn_box {
		margin: 60px 0 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.form_btn_box .btn_back,
	.form_btn_box .btn_send,
	.form_btn_box .btn_confirm {
		width: 450px;
	}

	.form_btn_box .btn_back,
	.form_btn_box .btn_send {
		margin: 0 30px;
		width: auto;
	}

	.form_btn_send {
		order: 2;
	}

	.form_btn_back {
		order: 1;
	}

	.form_btn_box .btn_send span,
	.form_btn_box .btn_confirm span {
		padding: 25px;
		display: block;
		background: url(../images/common/btn_circle_w.png) no-repeat right 12px center / 50px auto;
	}

	.form_btn_box .btn_send span {
		padding: 25px 90px 25px 40px;
	}

	.form_btn_box .btn_back span {
		padding: 25px 40px 25px 90px;
		display: block;
		background: url(../images/common/btn_circle2_w.png) no-repeat 12px center / 50px auto;
	}

	.form_btn_box .btn_back:hover,
	.form_btn_box .btn_confirm:hover,
	.form_btn_box .btn_send:hover {
		opacity: 0.7;
	}

	.form_btn_box_fixed {
		padding: 50px 0;
		width: 100%;
	}

}

.form_entry .contact_tel {
	margin: 20px 20px 40px;
	padding: 2px;
	border-radius: 30px;
	background-image: linear-gradient( 0deg, #2fba8c, #30bac3 100%);
}

.form_entry .contact_tel dl {
	background: #fff;
	border-radius: 28px;
	padding: 20px 20px 25px;
	text-align: center;
}

.form_entry .contact_tel dt {
	margin: 0 0 5px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.4;
}

.form_entry .contact_tel dd {
	display: inline-block;
}

.form_entry .contact_tel dd .ico_tel {
	margin: 0 0 5px;
	padding: 0 0 0 45px;
	font-size: 3.0rem;
	line-height: 1.4;
	font-weight: 600;
	font-family: 'Roboto', sans-serif;
	background: url(../images/common/ico_tel.svg) no-repeat 0 center / 40px auto;
}

.form_entry .contact_tel a {
	color: var(--p_color);
}

.form_entry .contact_tel dd .hour {
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4;
	display: flex;
	align-items: center;
	justify-content: center;
}

.form_entry .contact_tel dd .hour span {
	margin: 0 5px 0 0;
	padding: 2px 5px 3px;
	color: #fff;
	font-size: 1.0rem;
	font-weight: 700;
	background: var(--p_color);
	display: inline-block;
	border-radius: 4px;
}

.form_entry .contact_tel dd .hour .open {
	display: inline-block;
	color: #333;
}

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

	.form_entry .contact_tel {
		margin: 20px 0 80px;
		border-radius: 45px;
	}

	.form_entry .contact_tel dl {
		padding: 30px 20px 45px;
		border-radius: 42px;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: inherit;
	}

	.form_entry .contact_tel dt {
		margin: 0 20px 0 0;
		font-size: 2.0rem;
	}

	.form_entry .contact_tel dd {
	}

	.form_entry .contact_tel dd .ico_tel {
		margin: 0 15px 0 0;
		padding: 0 0 0 60px;
		font-size: 6.0rem;
	}

	.form_entry .contact_tel dd .hour span {
		margin: 0 10px 0 0;
		font-size: 1.4rem;
	}

}

.contact_tab {
	margin: 20px 10px 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.contact_tab::before {
	position: absolute;
	content: '';
	left: 0;
	right: 0;
	top: 0;
	height: 100%;
	width: 100px;
	margin: auto;
	background: #f6f6f6;
}

.contact_tab button {
	margin: 0;
	padding: 14px 10px;
	border: none;
	font-size: 1.6rem;
	line-height: 1.3;
	font-weight: 600;
	text-align: center;
	background: #f6f6f6;
	width: 50%;
	border-radius: 50px;
	z-index: 2;
}

.contact_tab button.act {
	color: #fff;
	border-radius: 50px;
	background: #0b7b74;
}

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

	.contact_tab {
		margin: 30px auto 80px;
    	width: min(95%,1100px);
	}

	.contact_tab button {
		padding: 17px 15px;
		font-size: 2.2rem;
	}

	.contact_tab button:not(.act):hover {
		opacity: 0.7;
	}

}

.contact_body#tel {
	display: none;
}

.check_text,
.check_text_confirm {
	display: flex;
}

.check_text i.icon_check,
.check_text_confirm i.icon_check {
	margin: 8px 8px 0 0;
	display: block;
	width: 16px;
	height: 12px;
	background: url(../images/common/ico_check_g.png) no-repeat 0 0 / 15px auto;
}

.entry_column p.check_text_confirm {
	margin-bottom: 10px;
}

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

	.category_column {
		margin-bottom: 50px;
	}

	.check_text {
		align-items: center;
		justify-content: center;
	}

	.check_text i.icon_check {
		margin: 5px 8px 0 0;
	}

}

.contact_type {
	margin: 0 0 55px;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.contact_type .label {
	margin: 0;
	background: #eff6f5;
	border-radius: 20px;
	display: block;
	width: calc(50% - 10px);
}

.contact_type .label label {
	padding: 15px;
	display: block;
	height: 100%;
}

.contact_type .label label > span {
	display: flex;
	align-items: center;
	min-height: 60px;
}

.contact_type .label input {
	margin-right: 5px;
}

.contact_type .label .name {
	font-size: 1.4rem;
}

.contact_type .icon_type01 {
	margin: 25px auto 0;
}

.contact_type .icon_type02 {
	margin: 20px 10px 0;
}

.contact_type .icon_type03 {
	margin: 15px 10px 0;
}

.contact_type .icon_type04 {
	margin: 15px 10px 0;
}

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

	.contact_type {
		margin: 25px 0 55px;
		justify-content: space-between;
		gap: 30px;
	}

	.contact_type .label {
		width: calc(25% - 23px);
	}

	.contact_type .label label {
		padding: 20px 30px;
	}

	.contact_type .label label > span {
		min-height: 42px;
	}

	.contact_type .label .name {
		font-size: 1.6rem;
	}

	.contact_type .icon_type01 {
		margin: 25px auto 0;
		width: 152px;
	}

	.contact_type .icon_type02 {
		margin: 20px auto 0;
		width: 132px;
	}

	.contact_type .icon_type03 {
		margin: 15px auto 0;
		width: 111px;
	}

	.contact_type .icon_type04 {
		margin: 15px auto 0;
		width: 111px;
	}

}

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

	.contact_type {
		margin: 0 auto;
		justify-content: cneter;
        max-width: 520px;

	}

	.contact_type .label {
		width: calc(50% - 15px);
	}

}



/* -----------------------
　　　404
----------------------- */

#notfound {
	color: #373228;
}

#wrapper_404 {
	margin: 10px;
	padding: 30px;
	width: auto;
    background-image: none;
}

#box_404 {
	border-radius: 5px;
}

.inner_left404 {
    margin-right: 0;
    margin-bottom: 40px;
	text-align: left;
}

.inner_left404 img {
	margin: 0 auto;
	width: 200px;
}

.inner_right404 {
    font-size: 1.4rem;
}

.inner_right404 h1 {
    font-size: 2.0rem;
    margin-bottom: 20px;
	text-align: left;
}

.inner_right404 p {
    margin-bottom: 10px;
}

.inner_right404 p a {
	text-decoration: underline;
}

#copyright_404 {
    display: block;
	margin: 10px 10px 0;
	text-align: center;
	font-size: 1.2rem;
}

.inner_left404 .site_logo_gold {
	margin: 0 10px 0 0;
	width: 40px;
}

.inner_left404 .site_logo_text {
	width: 130px;
}

.inner_left404 a {
	display: flex;
	align-items: center;
}

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

	#notfound {
	    padding-top: 50px;
	}

	#wrapper_404 {
		margin: 0 auto;
		padding: 60px 60px 0 70px;
		width: 1100px;
	}

	#box_404 {
		margin-bottom: 40px;
		padding: 0;
		display: flex;
		align-items: center;
	}

	.inner_left404 {
	    margin-right: 50px;
	    margin-bottom: 0;
	    text-align: left;
	}

	.inner_left404 img {
		margin: 0 auto;
		width: 250px;
		text-align: center;
	}

	.inner_right404 {
	    text-align: left;
	    font-size: 16px;
	}

	.inner_right404 h1 {
	    font-size: 24px;
	    margin-bottom: 20px;
	    text-align: left;
	}

	.inner_left404 .site_logo_gold {
		margin: 0 10px 0 0;
		width: 40px;
	}

}

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

	#wrapper_404 {
		padding: 60px 20px;
		width: 600px;
	}

	#box_404 {
		margin-bottom: 20px;
	}

	.inner_left404 {
	    margin-right: 30px;
	}

	.inner_left404 img {
		width: 200px;
	}

	.inner_right404 {
	    text-align: left;
	    font-size: 14px;
	}

	.inner_right404 h1 {
	    font-size: 20px;
	}

}

#adminBox .acms-admin-btn-admin {
	padding: 5px;
	font-size: 1.2rem;
}

#adminBox {
    margin-bottom: 0 !important;
    height: 80px;
    width: 100%;
    z-index: 100;
}

.acms-admin-btn-action-group th,
.acms-admin-btn-action-group td {
	padding-right: 10px !important;
	background-image: none !important;
	font-size: 1.4rem !important;
	white-space: nowrap !important;
}

.acms-admin-form .entryFormLiteEditor, .acms-admin-form textarea,
.acms-admin-btn,
.acms-admin-form select {
	font-size: 14px;
}

.lg_1 #adminBox,
.lg_2 #adminBox {
	position: fixed;
	top: 0;
}

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

	#adminBox {
    	height: 120px;
	}

	#adminBox .acms-admin-btn-admin {
		padding: 10px;
		font-size: 1.2rem;
	}

	#adminBox {
	    height: 90px;
	}

}

.titleWrapper {
	margin: 0 auto;
	padding: 40px 60px 10px;
	max-width: 1100px;
	background-color: #f7f7f7;
}

.titleWrapper h2 {
	margin: 0 0 30px 0;
	font-size: 3.0rem;
}

.custom_field_edit h3 {
	padding: 20px 10px;
	font-size: 1.8rem;
	font-weight: bold;
}

.entryFormLiteEditor a {
	text-decoration: underline;
	color: #0075DE;
}

.entryFormLiteEditor em {
	color: #e50012;
	font-style: normal;
	font-weight: bold;
}

.entryFormLiteEditor strong {
	font-style: normal;
	font-weight: bold;
}

.js-lazy-load {
	transform: translateY(0);
	transition: opacity 0.3s cubic-bezier(0.5, 0, 0, 1);
}


.entryFormSelectBottom {
  max-width: inherit !important;
}


@media (min-width: 768px) {
  .acms-admin-inline-btn .acms-admin-btn-admin,
  .formEntryActionUnit .acms-admin-btn-admin {
    font-size: 14px;
  }

  .comPostWrapper .acms-admin-btn-admin {
    font-size: 16px;
  }
}
