@charset "utf-8";

@media only screen and (max-width: 768px) {

	/*-----newsBox-----*/

	.newsBox {
		margin-top: 25px;
		padding: 10px 15px;
		background-color: #e7e5d5;
	}
	/*-----20231012 重要なお知らせ追加-----*/
	.topNotices .newsBox {
		margin-top: 6px;
	}
	/*----------*/

	.newsBox+.newsBox {
		margin-top: 5px;
	}

	.newsBox .newsBoxTitleWrap {
		padding-bottom: 10px;
		border-bottom: 1px solid #d0d0d0;
	}

	.newsBox .newsBoxTitleInL .title {
		margin-top: 0;
		color: #00743f;
		font-weight: bold;
		font-size: 15px;
		text-align: center;
		padding: 15px 0;
	}

	.newsBox .newsBoxTitleInR {
		width: 150px;
		margin: 10px auto 20px;
	}

	.newsBox .newsBoxTitleInR p {
		margin-top: 0;
		text-align: center;
	}

	.newsBox .newsBoxTitleInR .allPreview a::before {
			content: "";
			border-left: 8px solid #93c500;
			border-bottom: 4px solid transparent;
			border-top: 4px solid transparent;
			position: absolute;
			left: 16px;
			-webkit-transform: translateY(50%);
					transform: translateY(50%);
	}
	.newsBox .newsBoxTitleInR .allPreview a {
		position: relative;
		display: inline-block;
		padding: 5px 19px 4px 34px;
		border: 1px solid #93c500;
		border-radius: 4px;
		background-color: #ffffff;
		color: #93c500;
		font-size: 12px;
	}

	.newsBox .newsList {
		padding: 5px 0;
		text-decoration: none;
		margin-top: 0;
		line-height: 1.6;
	}

	.newsBox li:last-child .newsList {
		border-bottom: solid 1px #cccccc;
	}

	.newsBox li:last-child .newsList {
		border-bottom: solid 1px #cccccc;
	}

	.newsBox li a {
		text-decoration: none;
	}

	.newsBox a:link,
	.newsBox a:visited,
	.newsBox a:active {
		color: #4c483b;
	}

	.newsBox .newsList dt {
		color: #333333 !important;
	}

	.newsBox .newsList dd {
		text-indent: -1em;
		margin-left: 1em;
	}

	.newsBox .newsList dd a::before {
		content: "";
		border-left: 6px solid #93c500;
		border-bottom: 3.7px solid transparent;
		border-top: 3.7px solid transparent;
		position: absolute;
		left: 0;
		top:4px;
		/* -webkit-transform: translateY(50%);
				transform: translateY(50%); */
}
	.newsBox .newsList dd a {
		position: relative;
		padding: 0 0 0 1em;
	}

	.newsBox .newsList dd a .blankIc img {
		width: 9px;
		height: auto;
		margin-left: 4px;
		vertical-align: -1px;
	}

	.newsBox .newsList dd a .pdfIc img {
		width: 16px;
		height: auto;
		margin-left: 5px;
		vertical-align: -3px;
	}

	.newsBox .newsList dd a .hdIc img {
		width: 85px;
		height: auto;
		margin-left: 6px;
		vertical-align: -5px;
	}

	.newsBox .newsList.noLink dd {
		background: none;
	}

	/* SP用シェアNo.1 */
	.sp_shareBlock {
		text-align: center;
		width: 100%;
		margin: 40px auto 0;
		padding: 0 27.5px;
	}

	.sp_share,
	.sp_share img {
		width: 100%;		
	}

	.sp_share-text {
		width: 270%;
		color: #000000;
		font-size: 6vw;
		transform: scale(0.37) translateX(0%);
		transform-origin: top left;
		letter-spacing: 0.2rem;
		margin: 13px 0 -30px;
		text-align: right;
	}

	/*resultBlock*/
	.resultBlock {
		margin-top: 20px;
		padding: 0 10px;
		text-align: center;
	}

	.resultBlock>p {
		color: #000000;
	}

	.resultBlock>.now {
		padding: 7px 20px 5px;
		background-color: #e7e5d5;
		color: #4c483b;
		font-size: 16px;
		font-size: 1.6rem;
		font-weight: bold;
	}

	.resultBlock>.agree>span {
		display: inline-block;
		padding: 3px 0 3px 40px;
		background: url(/common/img/com_ic05.png) left 0.3em no-repeat;
		background-size: 32px auto;
		font-size: 13px;
		font-size: 1.3rem;
	}

	.resultBlock>.hospital>span {
		display: inline-block;
		padding: 3px 0 3px 40px;
		background: url(/common/img/com_ic02.png) left 0.3em no-repeat;
		background-size: 29px auto;
		font-size: 13px;
		font-size: 1.3rem;
	}

	.resultBlock>.agree .num,
	.resultBlock>.hospital .num {
		font-size: 22px;
		font-size: 2.2rem;
		font-weight: bold;
	}

	.resultBlock>.search a {
		display: inline-block;
		padding: 6px 15px 4px;
		border: solid 1px #00743f;
		border-radius: 17px;
		color: #ffffff;
		text-decoration: none;
		background-color: #00743f
	}

	.resultBlock>.search a span::before {
		content: "";
		border-left: 8px solid #ffffff;
		border-bottom: 4px solid transparent;
		border-top: 4px solid transparent;
		position: absolute;
		left: 0;
		-webkit-transform: translateY(70%);
				transform: translateY(70%);
	}
	.resultBlock>.search a span {
		position: relative;
		padding-left: 20px;
	}

	/*topLinkArea01*/
	.topLinkArea01 {
		padding: 40px 10px 0;
	}

	.topLinkArea01 .topLinkBlock {
		width: 100%;
		margin: 0 auto;
	}

	.topLinkArea01 .topLinkBlock .imgList {
		margin: 0;
	}
	.topLinkArea01 .topLinkBlock .imgList_flex {
		width: 100%;
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.topLinkArea01 .topLinkBlock .imgList_flex li{
		width: 100%;
	}
	.topLinkArea01 .topLinkBlock .imgList_flex li:nth-child(1){
		-webkit-flex-order: 2;
    -ms-flex-order: 2;
		order: 2;
		margin-top: 13px;
	}
	.topLinkArea01 .topLinkBlock .imgList_flex li:nth-child(2){
		-webkit-flex-order: 1;
    -ms-flex-order: 1;
		order: 1;
		margin-top: 0;
	}
	.topLinkArea01 .topLinkBlock .imgList_flex li:nth-child(3){
		-webkit-flex-order: 3;
    -ms-flex-order: 3;
		order: 3;
	}

	.topLinkArea01 .topLinkBlock .imgList li.bnr01 a {
		background-size: 100% auto !important;
		background-position: 30% 5% !important;
	}

	.topLinkArea01 .topLinkBlock .imgList li.bnr02 a {
		background-size: 100% auto !important;
		background-position: 0% 55% !important;
	}

	.topLinkArea01 .topLinkBlock .imgList li.bnr03 a {
		background-size: 110% auto !important;
		background-position: -20px 25% !important;
	}

	.topLinkArea01 .topLinkBlock .imgList li+li {
		margin-top: 13px;
	}

	.topLinkArea01 .topLinkBlock .imgList li a {
		display: block;
		height: 68vw;
		color: #ffffff;
		position: relative;
	}

	.topLinkArea01 .topLinkBlock .imgList li a img {
		width: 100%;
	}

	.topLinkArea01 .topLinkBlock .imgList li .textArea {
		width: 100%;
		background-color: rgba(0, 0, 0, 0.5);
		padding: 27px;
		text-align: center;
		position: absolute;
		bottom: 0;
	}

	.topLinkArea01 .topLinkBlock .imgList li a .textArea .name::before {
		content: "";
		position:absolute;
		left: 50%;
		bottom: 0vw;
		transform: translateX(-50%);
		display: block;
		width:26vw;
		height:1.1vw;
		background-color: #93c500;
		border-radius: 0.4vw;
		box-shadow: 0.6vw 0.6vw 5px rgba(0, 0, 0, 0.03);
	}
	.topLinkArea01 .topLinkBlock .imgList li a .textArea .name {
		position: relative;
		font-weight: bold;
		font-size: 20px;
		font-size: 2rem;
		line-height: 1.2;
		padding-bottom: 20px;
		margin-top: 0;
		letter-spacing: 0.2rem;
	}

	.topLinkArea01 .topLinkBlock .imgList li a .textArea .subLead {
		font-size: 11px;
		font-size: 1.1rem;
		line-height: 1;
		margin-top: 7px;
	}

	/*products-wrapper*/
	.products-wrapper {
		margin: 40px 10px 0;
		position: relative;
	}

	.products-wrapper .topLinkBlock {
		width: 100%;
		margin: 0 auto -6px auto;
	}

	.products-wrapper .topLinkBlock .imgList {
		margin: 0;
	}

	.products-wrapper .topLinkBlock .imgList li.list-family a {
		background:url(/img/top/sp/sp_family.png) no-repeat center center;
		background-size: cover;
	}

	.products-wrapper .topLinkBlock .imgList li.list-petit a {
		background:url(/img/top/sp/sp_petit.png) no-repeat center center;
		background-size: cover;
	}

	.products-wrapper .topLinkBlock .imgList li.list-senior a {
		background:url(/img/top/sp/sp_senior.png) no-repeat center center;
		background-size: cover;
	}

	.products-wrapper .topLinkBlock .imgList li+li {
		margin-top: 13px;
	}

	.products-wrapper .topLinkBlock .imgList li a {
		display: block;
		height: 68vw;
	}

	.products-wrapper .shareBlock {
		display: none;
	}

	.products-wrapper  .txtBlock {
		color: #ffffff;
		height:100%;
		padding: 5.5vw 6.3vw;
		position:relative;
		text-shadow: 0.6vw 0.6vw 5px rgba(0, 0, 0, 0.05);
	}

	.products-wrapper .product-description {
		font-size: 3.4vw;
	}

	.products-wrapper .product-name-jp {
		font-size: 6.2vw;
		font-weight: bold;
		letter-spacing: 0.2rem;
		padding: 2vw 0;
		margin:0 0 4.2vw 0;
		position: relative;
	}

	.products-wrapper .product-name-jp::after {
		content: "";
		position:absolute;
		bottom: -2.2vw;
		display: block;
		width:26vw;
		height:1.1vw;
		border-radius: 0.4vw;
		box-shadow: 0.6vw 0.6vw 5px rgba(0, 0, 0, 0.03);
	}

	.products-wrapper .list-family .product-name-jp::after {
		background-color: #92c400;
	}

	.products-wrapper .list-petit .product-name-jp::after {
		background-color: #f7931d;
	}

	.products-wrapper .list-senior .product-name-jp::after {
		background-color: #a5609e;
	}

	.products-wrapper .product-name-en {
		margin: 0;
		font-size: 2.5vw;
		letter-spacing: 0.05rem;
	}

	.products-wrapper .product-subtext {
		margin: 0;
		font-size: 3.1vw;
		position: absolute;
		bottom: 4vw;
	}


	/*topPageMain*/
	.swiper{
		width: 100%;
		height: auto;
	}
	.swiper-wrapper{
		margin-top: 0 !important;
	}
	.swiper-button-prev,.swiper-button-next{
		display: none;
	}
	.swiper-pagination-bullet {
		width: 8px;
		height: 8px;
		background-color: #FFFFFF;
		opacity: 1;
	}
	.swiper-pagination-bullet-active{
		width: 8px;
		height: 8px;
		background-color: #00743F;
	}
	
	#topPageMain ul li .visual {
		position: absolute;
	}

	#topPageMain ul li .visual a {
		display: block;
		height: 100%;
	}

	#topPageMain ul li .textArea {
		height: 100%;
	}

	#topPageMain ul li .textArea .imgText {
		margin: 0;
	}

	/*topLinkArea02*/
	.topLinkArea02 {
		margin: 35px 10px 0;
	}

	.topLinkArea02 .topLinkArea02Ti {
		text-align: center;
		font-size: 20px;
		margin-top: 0px;
		color: #000000;
		font-weight: bold;
	}

	.topLinkArea02 .topLinkArea02Float {
		margin-top: 2rem;
	}

	.topLinkArea02 .topLinkArea02Float .topLinkArea02R {
		margin-top: 17px;
	}

	.topGuideLink a {
		display: block;
		margin-top: 0px;
	}

	.topGuideLink a dl {
		display: table;
		width: 100%;
		margin-top: 0;
	}

	.topGuideLink a dl dt {
		display: table-cell;
		width: 40%;
		vertical-align: middle;
		text-align: left;
	}

	.topGuideLink a dl dt img {
		width: 100%;
		height: auto;
	}

	.topGuideLink a dl dd {
		display: table-cell;
		vertical-align: middle;
		text-align: left;
		padding-left: 13px;
	}

	.topGuideLink a dl dd>p {
		margin-top: -5%;
	}

	.topGuideLink .topGuideText::before {
		content: "";
		border-left: 8px solid #ffffff;
		border-bottom: 4px solid transparent;
		border-top: 4px solid transparent;
		position: absolute;
		left: 16px;
		-webkit-transform: translateY(50%);
				transform: translateY(50%);
}
	.topGuideLink .topGuideText {
		position: relative;
		max-width: 200px;
		margin-top: 5px;
		display: block;
		font-size: 12px;
		color: #ffffff;
		text-align: center;
		font-weight: bold;
		padding: 5px 19px 4px 34px;
		border-radius: 4px;
		background-color: #00743f;
	}

	.topGuideLink .topGuideSub {
		font-size: 12px;
		display: block;
		color: #000000;
		font-weight: bold;
	}

	/*20170906変更*/
	.topGuideLink .eco {
		margin-top: -47px;
	}

	.topGuideLink .note {
		font-size: 10px;
		margin-top: 9px;
		display: block;
		color: #000000;
	}


	/*topLinkArea03*/
	.topLinkArea03 {
		margin-top: 35px;
	}

	.topLinkArea03 .topLinkArea03In {
		margin: 0 auto;
	}

	.SlideTitle {
		padding: 30px 15px 10px;
		margin: 10px;
		text-align: center;
		color: #4c483b;
	}

	.SlideTitle .name::before {
		content: "";
		position:absolute;
		left: 50%;
		bottom: 0vw;
		transform: translateX(-50%);
		display: block;
		width:26vw;
		height:1.1vw;
		background-color: #00743F;
		border-radius: 0.4vw;
		box-shadow: 0.6vw 0.6vw 5px rgba(0, 0, 0, 0.03);
	}
	.SlideTitle .name {
		position: relative;
		font-weight: bold;
		font-size: 2rem;
		line-height: 1.2;
		padding-bottom: 20px;
		margin-top: 0;
	}

	.SlideTitle .subLead {
		font-size: 11px;
		font-size: 1.1rem;
		line-height: 1;
		margin-top: 7px;
	}

	.topSlide {
		margin: 0 auto;
	}

	.topSlide .topSlideList {
		margin-top: 0px;
	}

	.topSlide .topSlideList .slick-slide {
		padding-left: 10px;
		padding-right: 10px;
	}

	.topSlide .topSlideList>div .topSlidePhoto {
		text-align: center;
		border: 1px solid #e9e9e9;
	}

	.topSlide .topSlideList>div .topSlidePhoto img {
		width: 100%;
		height: auto;
	}

	.topSlide .topSlideList>div a {
		color: #555555;
		display: block;
		background: #FFF;
		overflow: hidden;
	}

	.topSlide .topSlideList>div a dl {
		margin-top: 0px;
		padding: 10px 10px 8px 10px;
	}

	.topSlide .topSlideList>div a dl dt {
		color: #339933;
		font-weight: bold;
		font-size: 14px;
	}

	.topSlide .topSlideList>div a dl dt .date {
		display: block;
		text-align: right;
	}

	.topSlide .topSlideList>div a dl dd {
		margin-top: 5px;
		font-size: 14px;
	}

	.topSlide .slick-dots {
		text-align: center;
		margin: 18px auto 0;
	}

	.topSlide .slick-dots li {
		display: inline-block !important;
	}

	.topSlide .slick-dots li button {
		display: inline-block !important;
		width: 8px !important;
		height: 8px !important;
		padding: 0;
		margin: 0 2px;
		border: none;
		background-color: #ccc;
		border-radius: 100%;
		text-indent: -9999px;
	}

	.topSlide .slick-dots li.slick-active button {
	background-color: #00743F;

	}

	.slick-next {
		text-indent: -9999px !important;
		width:15px !important;
		height:15px !important;
		border-top: 1px solid #999;
		border-right: 1px solid #999;
		border-left: none;
		border-bottom: none;
		transform: rotate(45deg) translateY(-50%);
		background-color:transparent;
		position:absolute;
		right:20px;
		bottom:0;
		padding:0;
	}

	.slick-prev {
		text-indent: -9999px;
		width:15px !important;
		height:15px !important;
		border-bottom: 1px solid #999;
		border-left: 1px solid #999;
		border-right: none;
		border-top: none;
		transform: rotate(45deg) translateY(-50%);
		background-color:transparent;
		position:absolute;
		left:10px;
		bottom:0;
		padding:0;
	}

	.topSlide .bx-wrapper .bx-pager {
		bottom: -46px;
	}

	.topSlideSection .moreBtn {
		text-align: center;
	}

	.topSlideSection .moreBtn a::before {
		content: "";
		border-left: 8px solid #ffffff;
		border-bottom: 4px solid transparent;
		border-top: 4px solid transparent;
		position: absolute;
		left: 16px;
		-webkit-transform: translateY(70%);
				transform: translateY(70%);
}
	.topSlideSection .moreBtn a {
		position: relative;
		display: inline-block;
		font-size: 12px;
		padding: 5px 19px 4px 34px;
		border-radius: 4px;
		background-color: #00743f;
	}

	.topSlideSection .moreBtn a:link,
	.topSlideSection .moreBtn a:visited,
	.topSlideSection .moreBtn a:active {
		color: #ffffff;
	}

	.topSlideSection>.SlideTitle {
		border-top: 1px solid #a5a39d;
	}

	.topSlideSection+.topSlideSection>.SlideTitle {
		border: none;
		position: relative;
		margin-top: 50px;
	}
	.topSlideSection+.topSlideSection>.SlideTitle::before {
		content: "";
		position: absolute;
		background-size: 8px 1px;
		background-image: linear-gradient(to right, #a5a39d, #a5a39d 5px, transparent 3px, transparent 8px);
		background-repeat: repeat-x;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
	}


	/*topLinkArea04*/
	.topLinkArea04 {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.topLinkArea04 .topLinkArea04In {
		margin: 0 auto;
	}

	.topServiceTitle {
		text-align: center;
		font-size: 20px;
		margin: 0px 10px;
		border-top: solid 1px #a5a39d;
		padding-top: 40px;
		color: #000000;
		font-weight: bold;
	}

	.topSlideBannerBox {
		margin: 0 auto;
		padding-left: 30px;
		padding-right: 30px;
		margin-top: 25px;
	}

	.topSlideBannerBox .slick-slide {
		margin: 0 5px;
	}
	
	.topSlideBannerBox .slick-prev {
		left: -15px;
		bottom: 50%;
		transform: translateY(50%) rotate(45deg);
	}
	.topSlideBannerBox .slick-next {
		right: -15px;
		bottom: 50%;
		transform: translateY(50%) rotate(45deg);
	}


	.topSlideBannerBox .slick-dots {
		display: none !important;
	}

	/*topLinkBlock02*/
	.topLinkBlock02 .linkBlock {
		width: 100%;
		padding: 0 10px;
		letter-spacing: -.40em;
	}

	.topLinkBlock02 .linkBlock li {
		display: inline-block;
		vertical-align: middle;
		width: 31.7%;
		margin-left: 2%;
		text-align: center;
		font-weight: bold;
		border-radius: 4px;
		letter-spacing: normal;
	}

	.topLinkBlock02 .linkBlock li:first-child {
		margin-left: 0;
	}

	.topLinkBlock02 .linkBlock li a {
		display: table;
		padding: 0px;
		color: #ffffff;
		font-size: 15px;
		line-height: 1.3;
		width: 100%;
	}

	.topLinkBlock02 .linkBlock li p {
		margin-top: 0;
		display: table-cell;
		width: 100%;
		vertical-align: middle;
		text-align: center;
		height: 6em;
		padding-top: 38px;
	}

	.topLinkBlock02 .linkBlock li.type01 {
		background: url(/common/img/header_ic13.png) center 10px no-repeat;
		background-size: 36px auto;
		background-color: #ec6d74;
	}

	.topLinkBlock02 .linkBlock li.type02 {
		background: url(/common/img/header_ic05.png) center 10px no-repeat;
		background-size: 36px auto;
		background-color: #fd8c07;
	}

	.topLinkBlock02 .linkBlock li.type03 {
		background: url(/common/img/header_ic07.png) center 10px no-repeat;
		background-size: 23px auto;
		background-color: #22753b;
	}

	/*20170904追加*/

	.topLinkArea04In .moreBtn {
		text-align: center;
		margin-top: 26px;
	}

	.topLinkArea04In .moreBtn a::before {
		content: "";
		border-left: 8px solid #00743F;
		border-bottom: 4px solid transparent;
		border-top: 4px solid transparent;
		position: absolute;
		left: 16px;
		-webkit-transform: translateY(50%);
				transform: translateY(50%);
}
	.topLinkArea04In .moreBtn a {
		position: relative;
		display: inline-block;
		font-size: 12px;
		padding: 5px 19px 4px 34px;
		border: 1px solid #00743F;
		color: #00743F;
		border-radius: 4px;
	}

	.topLinkBlock02 .linkBlock li.type04 {
		background: url(/common/img/com_ic30.png) center 14px no-repeat;
		background-size: 34px auto;
		background-color: #93c500;
	}

	.topLinkBlock02 .linkBlock li.type05 {
		width: 100%;
		overflow: hidden;
		display: block;
		margin: 0 auto;
		background: #ec6d74;
		color: #fff;
		border-radius: 5px;
		text-align: center;
		margin-top: 2%;
	}
	.topLinkBlock02 .linkBlock li.type05 span {
		font-size: 16px;
		background: url(/products/insurance1/assets/img/common/icon_comparison.png) 0 50% no-repeat;
		background-size: auto 1.3em;
		padding: 1em 0 1em 2.2em;
		display: inline-block;
	}

	.topLinkBlock02 .linkBlock03 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 0 10px;
	}
	.topLinkBlock02 .linkBlock03 li {
		display: flex;
		width: 49%;
		border-radius: 20px;
		border: 3px solid #93c500;
		margin-bottom: 10px;
		background-color: #f6f6f6;
		font-size: 3.5vw;
		font-weight: 600;
		letter-spacing: -0.08em;
	}
	.topLinkBlock02 .linkBlock03 li.type01 {
		background: url(/img/top/sp/icon_01.png) 3.5vw 50% no-repeat;
		background-size: 7vw auto;
		border-color: #93c500;
		color: #93c500;
	}

	.topLinkBlock02 .linkBlock03 li.type02 {
		background: url(/img/top/sp/icon_02.png) 3.5vw 50% no-repeat;
		background-size: 5vw auto;
		border-color: #FD8C08;
		color: #FD8C08;
	}

	.topLinkBlock02 .linkBlock03 li.type03 {
		background: url(/img/top/sp/icon_03.png) 3.5vw 50% no-repeat;
		background-size: 7vw auto;
		border-color: #ec6d74;
		color: #ec6d74;
	}

	.topLinkBlock02 .linkBlock03 li.type04 {
		background: url(/img/top/sp/icon_04.png) 3.5vw 50% no-repeat;
		background-size: 5vw auto;
		border-color: #00743f;
		color: #00743f;
	}
	.topLinkBlock02 .linkBlock03 li a {
		width: 100%;
	}
	.topLinkBlock02 .linkBlock03 li.type01 a {
		color: #93c500;
		padding: 4vw 0 4vw 14vw;
	}

	.topLinkBlock02 .linkBlock03 li.type02 a {
		color: #FD8C08;
		padding: 4vw 0 4vw 12vw;
	}

	.topLinkBlock02 .linkBlock03 li.type03 a {
		color: #ec6d74;
		padding: 4vw 0 4vw 14vw;
	}

	.topLinkBlock02 .linkBlock03 li.type04 a {
		color: #00743f;
		padding: 4vw 0 4vw 12vw;
	}

/*aboutBlock*/
#pageContainer .aboutBlock .variableCol2{
	margin:40px 10px 0;
}
#pageContainer .aboutBlock .variableCol2 > .imgLeft {
	float: none;
	border: 1px solid #4c483b;
	margin-right: 0;
	padding: 10px;
	color: #4c483b;
	font-weight: bold;
	max-width: 100%;
}
#pageContainer .aboutBlock .variableCol2 > .textCol {
	margin-top: 10px;
}

.newsIcon {
	padding-left: 18px;
}
/* 20231128　SEO施策：トップ改修
------------------------------------------------------ */
.d-flex{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.d-flex-sp {
	display: flex;
	flex-direction: row;
	width: 100%;
}
.d-flex-slider {
	display: block;
}

.d-flex-slider .dvoice-box{
	width: 100%;
}

.voice-leftbox{
	background: #e5f0ec;
	position: relative;
	width: 49%;
	margin: 1rem 1rem 0 1rem;
}
.voice-rightbox{
	background: #F6EFF5;
	position: relative;
	width: 49%;
	margin: 1rem 1rem 0 1rem;
}

.dvoice-box::before,
.dvoice-box::after,
.voice-leftbox::before,
.voice-leftbox::after,
.voice-rightbox::before,
.voice-rightbox::after {
	width: calc(100% - 20px);
	height: 0;
	display: block;
	position: absolute;
	left: 0;
	content: "";  
}
.voice-leftbox::before {
	border-bottom: solid 20px #e5f0ec;
	border-right: solid 20px transparent;
	bottom: 100%;
}
.voice-rightbox::before {
	border-bottom: solid 20px #F6EFF5;
	border-right: solid 20px transparent;
	bottom: 100%;
}
.dvoice-box{
	background: #f5f2e9;
	position: relative;
	width: 49%;
	padding-bottom: 3rem;
	margin: 1rem;
}
.dvoice-box::before {
	border-bottom: solid 20px #f5f2e9;
	border-right: solid 20px transparent;
	bottom: 100%;
}
.dvoice-image {
	flex-basis: 40%;
}
.dvoice-text {
	flex-basis: 60%;
	padding: 0 !important;
}

.voice-image {
	padding: .5rem;
	width: 100px;
}
.image_border {
	width: 100px;
	height: 100px;
	border-radius:50%;
	border: solid 2px #fff;
	-webkit-box-sizing: unset;
	box-sizing: unset;
}

.image_circle-left {
	width: 100px;
	height: 100px;
	border-radius:50%;
	background-image: url("/img/top/dog.png");
	background-size: cover;
	background-position: 54% 36%;
}
.image_circle-right {
	width: 100px;
	height: 100px;
	border-radius:50%;
	background-image: url("/img/top/cat.png");
	background-size: cover;
	background-position: 54% 36%;
}
.image_circle-dleft {
	width: 100px;
	height: 100px;
	border-radius:50%;
	background-image: url("/img/top/doc1.jpg");
	background-size: 250%;
	background-position: 46% 26%;
}
.image_circle-dright {
	width: 100px;
	height: 100px;
	border-radius:50%;
	background-image: url("/img/top/doc2.jpg");
	background-size: 280%;
	background-position: 50% 20%;
}
.voice-text {
	padding: 0 1rem 0 2rem;
}
.voice-text-title {
	font-weight: bold;
	font-size: 1.8rem;
}
.voice-text-clinic{
	font-weight: bold;
	font-size: 1.4rem;
}
.voice-text-doctor{
	font-size: 1.4rem;
}
.voice-leftbox-text-course{
	display: inline-block;
	padding: 0.25rem 1rem;
	margin: 1rem 0;
	border: 1px solid #00743F;
	border-radius: 5px;
	color: #00743F;
	font-weight: bold;
	font-size: 1.6rem;
}
.voice-text-category{
	display: inline-block;
	padding: 0 1rem;
	margin: 1rem 0;
	border: 1px solid #5CB0E3;
	border-radius: 5px;
	color: #5CB0E3;
	letter-spacing: 2.80px;
	font-weight: bold;
}
.voice-rightbox-text-course{
	display: inline-block;
	padding: 0.25rem 1rem;
	margin: 1rem 0;
	border: 1px solid #A5609E;
	border-radius: 5px;
	color: #A5609E;
	font-weight: bold;
	font-size: 1.6rem;
}
.text-center {
	text-align: center;
}
.voice-text-message-sp{
	padding: 1rem;
	font-size: small;
	min-height: 120px;
}
.btn-voice {
	display: inline-block;
	padding: 17px 10px;
	border-radius: 5px;
	background-color: #027048;
	color: #fff !important;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.25;
	text-align: center;
	width: 312px;
	position: relative;
}
.my-3{
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}
.my-4{
	margin-top: 2rem;
	margin-bottom: 2rem;
}
.my-6{
	margin-top: 3rem;
	margin-bottom: 3rem;
}
.px-2 {
		padding-left: 1rem;
		padding-right: 1rem;
}
.mt-02 { margin-top: .2rem;}
.mt-4 { margin-top: 2rem;}
.mt-6 { margin-top: 3rem;}
.mt-8 { margin-top: 8rem;}
.fss { font-size: small;}
.fsxs { font-size: x-small;}
.fsxl { font-size: x-large;}
.fsxxs { font-size: xx-small;}
.fw-bold{ font-weight: bold;}
.text-dark { color: #000 !important;}
.g-1 { gap: 0.25rem; }
.g-4 { gap: 1rem; }
.g-8 { gap: 2rem; }
.align-item-stretch { align-items: stretch;}

.compare-left {
	flex-basis: 33%;
	text-align: center;
	color: #fff;
	font-weight: bold;
	background:#007048;
	padding: 0.5rem 0;
}
.compare-center{
	flex-basis: 33%;
	text-align: center;
	color: #fff;
	font-weight: bold;
	background: #A5609E;
	padding: 0.5rem 0;
}
.compare-right{
	flex-basis: 33%;
	text-align: center;
	color: #fff;
	font-weight: bold;
	background: #EB5902;
	padding: 0.5rem 0;
}
.compare-heading {
	font-weight: bold;
	padding: 1rem 0;
	text-align: center;
	font-size: medium;
}
.compare-left-light {
	flex-basis: 33%;
	text-align: center;
	color: #007048;
	font-weight: bold;
	background: #E5F0EC;
	padding: 1rem 0;
}
.compare-center-light{
	flex-basis: 33%;
	text-align: center;
	color: #A5609E;
	font-weight: bold;
	background: #F6EFF5;
	padding: 1rem 0;
}
.compare-right-light{
	flex-basis: 33%;
	text-align: center;
	color: #EB5902;
	font-weight: bold;
	background: #FEF4E8;
	padding: 1rem 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.reason-box {
	width:100%;
	flex-basis: 50%;
	padding: 1rem;
	border: 1px solid #E6E6E6;
}
.reason-icon {
	padding-top: 2rem;
}
.reason-icon img {
	width: 60px;
}
.reason-heading {
	font-weight: bold;
	color: #53AA32;
	margin: 1rem 0;
}
.reason-sub {
	font-size: small;
	margin-top: 1rem;
}
.reason-navi {
	margin: 2rem 0;
	color: #53AA32;
}
.slick-box .slick-dots {
	text-align: center;
}
.slick-box .slick-dots li{
	display: inline-block;
}
.slick-box .slick-dots li button {
	display: inline-block !important;
	width: 8px !important;
	height: 8px !important;
	padding: 0;
	margin: 0 2px;
	border: none;
	background-color: #ccc;
	border-radius: 100%;
	text-indent: -9999px;
}
.slick-box .slick-dots li.slick-active button {
	background-color: #00743F;
}

.text-center-more {
	display: block;
	text-align: center;
}
.btn__voice{
	margin: 20px auto 0;

}
.btn__voice a{
	width: 250px;
	padding: 10px 0;
	border: 2px solid #007048;
	border-radius: 4px;
	color: #007048;
	background-color: #ffffff;
	cursor: pointer;
	display: inline-block;
	text-align: center;
	font-weight: bold;
}
	/*
		#faq
	--------------------------------*/
	#faq { background-color: #fff; overflow: hidden; padding-bottom: 60px; padding-top: 40px; border-top: 1px solid #a5a39d; margin: 35px 10px 0;}
	#faq h2 { text-align: center; font-size: 20px; color: #000000; font-weight: bold; }
	#faq dl { width: 900px; margin: auto; border: #007048 solid 2px;}
	#faq dl + dl { margin-top: 20px; }
	#faq dt { font-size: 18px; color: #007048; position: relative; }
	#faq dd > div { font-size: 18px; border: #fff solid 3px; overflow: hidden; padding: 1em; line-height: 2; background: #f3f2ea;}
	#faq dd p { margin-top: 0; line-height: 2; }
	#faq dd p + p { margin-top: 1em; }
	#faq dd small { font-size: 14px; display: block; text-indent: -1em; padding-left: 1em; }
	#faq dd small + small { margin-top: 0; }
	#faq dd ol li { text-indent: -1.2em; padding-left: 1.2em; }
	.accordion_head { color: #007048; display: block; position: relative; padding: 1em 70px 1em 1em; text-indent: -1.4em; padding-left: 1.4em; margin-left: 1em; }
	.accordion_head:link,.accordion_head:hover,.accordion_head:visited { color: #007048; }
	.accordion_head:before { content: ""; display: block; width: 40px; height: 40px; border: #007048 solid 2px; border-radius: 100%; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); }
	.accordion_head:after { content: ""; display: block; width: 13px; height: 13px; border-bottom: #007048 solid 2px; border-right: #007048 solid 2px; position: absolute; right: 34px; top: 50%; transform: rotate(45deg) translate(-50%, -50%); transition: .5s ease; }
	.accordion_body { max-height: 0; overflow: hidden; /*transition: .5s ease;*/ }
	.accordion.js__on .accordion_head:after { top: 55%; transform: rotate(45deg) translate(-50%, -50%) scale(-1); }
	.accordion.js__on .accordion_body { max-height: 1000vh; }
	#faq dl.js__on dt:before { content: ""; width: calc(100% - 6px); height:  calc(100% - 6px); position: absolute; top: 3px; left: 3px; }
	#faq .accordion.js__on .accordion_head:after { transform: rotate(45deg) translate(-35%, -35%) scale(-1); }

	#faq h2 { margin: 16vw auto 7vw; }
	#faq dl { width: 94vw; margin: auto; }
	#faq dt { font-size: 15px; }
	#faq dd > div { font-size: 15px; }
	#faq dd small { font-size: 3.47vw; }
	.accordion_head { padding: 1em 3.5em 1em 1em; }
	.accordion_head:before { width: 30px; height: 30px; }
	.accordion_head:after { width: 9px; height: 9px; right: 31px; }
	#faq .accordion.js__on .accordion_head:after { transform: rotate(45deg) translate(-50%, -50%) scale(-1); }

	.ind03 {
		padding-left:2em;
		text-indent:-2em;
		font-weight: bold;
	}
	.more__btn {
		display: block;
		text-align: center;
		font-weight: bold;
	}
	.more__btn a{
		border-width: 1px;
		border-color: #007048;
		border-style: solid;
		border-radius: 5px;
		color: #007048;
		display: inline-block;
		padding: 3px 13px;
		margin-top: 10px;
	}

.grad_item01 {
	overflow: hidden;
	position: relative;
	display: none;
	margin-top: 20px;
}
.grad-trigger {
	width: 250px;
	margin: 20px auto 0;
	padding: 10px 0;
	border: 2px solid #007048;
	border-radius: 4px;
	color: #007048;
	background-color: #ffffff;
	cursor: pointer;
}
.grad-trigger:before {
	display: inline-block;
	position: relative;
	top: -2px;
	width: 8px;
	height: 8px;
	margin-right: 8px;
	border-right: 2px solid;
	border-bottom: 2px solid;
	content: "";
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.grad-trigger:after {
	content: "もっと見る";
}
.grad-trigger.active:before {
	top: 2px;
	-webkit-transform: rotate(-135deg);
	    -ms-transform: rotate(-135deg);
	        transform: rotate(-135deg);
}
.grad-trigger.active:after {
	content: "閉じる";
}

	.mi-pc {
		display: none!important;
	}
	.mi-sp {
		display: block!important;
	}

	/*=================================

	clearfix

=================================*/
	.newsBox .newsBoxTitleInR:after,
	.newsBox .newsBoxTitleWrap:after,
	.newsBox .newsBoxTitleWrap .newsBoxTitleInR:after {
		content: "";
		display: block;
		clear: both;
	}

}

@media only screen and (max-width: 380px) {
	#topPageMain ul li.main01 .textArea .text {
		font-size: 8px;
	}
}
