@media screen and (max-width: 750px) {
	body {
		min-width: 375px;
	}

	/* home
    ------------------------------------------------------------------------*/
	/* key */
	.home .key {
		max-height: 800px;
		min-height: auto;
	}

	/* cont01 */
	.home .cont01 .inner {
		width: 90%;
		padding-bottom: 120px;
		padding-top: 70px;
	}
	.home .cont01 .box01 .common_btn {
		position: absolute;
		bottom: 35px;
		left: 50%;
		transform: translateX(-50%);
	}
	.home .cont01 .box02 .box_item {
		width: 100%;
	}
	.home .cont01 .box02 .box_item {
		margin-top: 30px;
	}
	.home .cont01 .box02 .box_item h3 {
		font-size: 14px;
	}
	.home .cont01 .box02 .box_item .cate {
		font-size: 12px;
	}
	.home .cont01 .box02 .box_item .date {
		font-size: 14px;
	}

	/* cont02 */
	.home .cont02 .inner {
		width: 90%;
	}
	.home .cont02 .box {
		flex-direction: column-reverse;
		align-items: flex-start;
		max-width: 500px;
	}
	.home .cont02 .box::before {
		display: none;
	}
	.home .cont02 .box:first-of-type {
		flex-direction: column-reverse;
		margin: auto;
	}
	.home .cont02 .box:nth-of-type(2) {
		margin: 50px auto 0;
	}
	.home .cont02 .box .text_box {
		max-width: none;
		width: 100%;
		padding: 0;
		margin-top: 7%;
	}
	.home .cont02 .box .text_box h2 {
		font-size: 20px;
		text-align: center;
	}
	.home .cont02 .box .text_box h2::before {
		content: "";
		width: 60%;
		min-width: 280px;
		height: 0;
		padding-top: 18%;
		background: url(../img/home/home_text01.png) no-repeat center / 100%;
		position: absolute;
		top: 0;
		right: auto;
		left: 50%;
		transform: translate(-50%, -32%);
		z-index: -1;
	}
	.home .cont02 .box:nth-of-type(2) .text_box h2::before {
		content: "";
		width: 25%;
		min-width: 190px;
		height: 0;
		padding-top: 18%;
		background: url(../img/home/home_text02.png) no-repeat center / 100%;
		position: absolute;
		top: 0;
		right: auto;
		left: 50%;
		transform: translate(-50%, -38%);
		z-index: -1;
	}
	.home .cont02 .box .text_box .text {
		font-size: 14px;
	}
	.home .cont02 .box:nth-of-type(2) .text_box {
		padding: 0;
	}
	.home .cont02 .box .img {
		width: 100%;
	}
	.home .cont02 .box .text_box .common_btn a {
		width: 50%;
		font-size: 14px;
		height: auto;
		line-height: 1;
		padding: 0;
		height: 50px;
		line-height: 50px;
		border-radius: 50px;
		min-width: 300px;
		margin: auto;
	}

	/* cont03 */
	.home .cont03 .box01 {
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
	}
	.home .cont03 .box01 h2 {
		padding-left: 200px;
	}
	.home .cont03 .box01 h2::before {
		left: 175px;
	}
	.home .cont03 .box01 h2::after {
		left: -6px;
	}
	.home .cont03 .box01 .text {
		margin: 10px 0 0 0;
	}
	.home .cont03 .box02 {
		margin: 35px auto 50px;
	}
	.home .cont03 .box02 .box_item {
		width: 48%;
		background-size: 36%, 31%;
		background-position: top 19% center, top 61% center;
		padding: 30% 0 5%;
		font-size: min(2.5vw, 16px);
		line-height: 1.5;
	}
	.home .cont03 .box02 .box_item:nth-of-type(2),
	.home .cont03 .box02 .box_item:nth-of-type(4),
	.home .cont03 .box02 .box_item:nth-of-type(6) {
		margin: 0 0 0 4%;
	}
	.home .cont03 .box02 .box_item:nth-of-type(5) {
		margin: 0;
	}
	.home .cont03 .box02 .box_item:nth-of-type(n + 3) {
		margin-top: 4%;
	}
	.home .cont03 .box02 .box_item:nth-of-type(2) {
		background-size: 34%, 31%;
		background-position: top 24% center, top 60% center;
	}
	.home .cont03 .box02 .box_item:nth-of-type(5) {
		background-size: 28%, 31%;
	}
	.home .cont03 .box02 .box_item:nth-of-type(6) {
		background-size: 46%, 31%;
	}
	.home .cont03 .btn a {
		font-size: 14px;
		height: 50px;
		line-height: 48px;
		width: 280px;
	}

	/* cont04 */
	.home .cont04 {
		padding: 100px 0 80px;
	}
	.home .cont04::before {
		right: calc(50% - 100px);
	}
	.home .cont04 .box01 {
		flex-direction: column;
		align-items: flex-start;
	}
	.home .cont04 .box01 h2 {
		padding-left: 210px;
	}
	.home .cont04 .box01 h2::before {
		left: 183px;
	}
	.home .cont04 .box01 h2::after {
		left: -17px;
		bottom: -15px;
	}
	.home .cont04 .box01 .text {
		margin: 10px 0 0 0;
	}
	.home .cont04 .box02 {
		margin: 30px auto 0;
	}
	.home .cont04 .box02 .btn {
		width: 48%;
	}
	.home .cont04 .box02 .btn a {
		font-size: max(2.5vw, 14px);
	}
	.home .cont04 .box02 .btn:nth-of-type(2) a {
		font-size: 12px;
		font-size: clamp(11px, 2vw, 14px);
		letter-spacing: -0.8px;
	}
	.home .cont04 .box02 .btn:nth-of-type(4) a {
		background: url(../img/home/home_text12.png) no-repeat center / 50%, linear-gradient(90deg, #49b117, #93da01);
	}
	.home .cont04 .box02 .btn:nth-of-type(5) a {
		background: url(../img/home/home_text13.png) no-repeat center / 45%, linear-gradient(90deg, #49b117, #93da01);
	}
	.home .cont04 .box02 .btn:nth-of-type(2n) {
		margin-left: 4%;
		margin-right: 0;
	}
	.home .cont04 .box02 .btn:nth-of-type(n + 3) {
		margin-top: 4%;
	}
	.home .cont04 .box02 .btn:nth-of-type(5) {
		margin-right: 0;
		margin-left: 0;
	}
	.home .cont04 .box02 .btn:last-of-type {
		margin-left: 0;
		margin-right: auto;
	}
	.home .cont04 .box03 {
		display: flex;
		flex-direction: column-reverse;
		max-width: 500px;
		margin: 15% auto 0;
	}
	.home .cont04 .box03::before {
		display: none;
	}
	.home .cont04 .box03 .img {
		position: static;
		transform: none;
		width: 90%;
	}
	.home .cont04 .box03 .text_box {
		padding: 0;
		margin-top: 7%;
	}
	.home .cont04 .box03 .text_box::before {
		display: none;
	}
	.home .cont04 .box03 .text_box h2 {
		text-align: center;
	}
	.home .cont04 .box03 .text_box h2::before {
		content: "";
		width: 80%;
		height: 0;
		padding-top: 14%;
		background: url(../img/home/home_text18.png) no-repeat center / 100%;
		position: absolute;
		top: 0px;
		left: 50%;
		transform: translate(-50%, -35%);
		z-index: -1;
	}
	.home .cont04 .box03 .text_box .text {
		padding: 0;
		margin: 20px 0 25px;
	}
	.home .cont04 .box03 .text_box .common_btn a {
		margin: auto;
		font-size: 14px;
		min-width: 340px;
		max-width: 340px;
		height: 50px;
		line-height: 50px;
		border-radius: 50px;
		padding: 0;
	}

	/* bnr_box */
	.home .bnr_box {
		margin: 60px auto 0;
	}
	.home .bnr_box .img {
		margin: 10px;
	}
	.home .bnr_box .order01 {
		order: 13;
	}
	@media screen and (max-width: 550px) {
		.home .bnr_box {
			margin: 45px auto 0;
		}
		.home .bnr_box .img {
			margin: 5px;
		}
		.home .bnr_box .img img {
			max-height: 40px;
			width: auto;
		}
	}
	/* home end
    ------------------------------------------------------------------------*/

	/* 下層メインビジュアル
    ------------------------------------------------------------------------*/
	.common .key {
		margin-top: 82px;
		height: 200px;
	}
	.common .key .text {
		white-space: nowrap;
		top: 52%;
		text-align: center;
		padding-top: 20px;
	}
	.common .key .text::before {
		content: "";
		width: 30px;
		height: 2px;
		background: #fff;
		position: absolute;
		top: 7px;
		left: 50%;
		transform: translateX(-50%);
	}
	/* 下層メインビジュアル end
    ------------------------------------------------------------------------*/

	/* 下層パンくず
    ----------------------------------------------------------- */
	.common .breadcrumbs-wrap {
		padding: 10px 10px 0;
	}
	.common #breadcrumbs {
		font-size: 14px;
		padding: 20px 20px 0;
	}
	/* 下層パンくず end
    ----------------------------------------------------------- */

	/* サービス
    ------------------------------------------------------------------------*/
	.common.service .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.service .key .text::after {
		content: url(../img/page/service_key_text.png);
		top: -53px;
		left: 50%;
		transform: translateX(-50%);
	}

	/* cont01 */
	.service .cont01 {
		margin-top: 50px;
		padding: 0 15px;
	}
	.service .cont01 .inner::before {
		content: "";
		width: 165px;
		height: 267px;
		background: url(../img/page/service_bg01.png) no-repeat center / 100%;
		position: absolute;
		top: 5px;
		left: 0px;
		z-index: -1;
	}
	.service .cont01 .inner::after {
		content: "";
		width: 110px;
		height: 127px;
		background: url(../img/page/service_bg02.png) no-repeat center / 100%;
		position: absolute;
		top: -45px;
		right: 0;
		z-index: -1;
	}
	.service .cont01 h2 {
		font-size: 20px;
		max-width: 470px;
		margin: auto;
		padding-top: 40px;
		background: url(../img/page/service_text01.png) no-repeat top center / 200px;
	}
	@media screen and (max-width: 470px) {
		.service .cont01 h2 {
			font-size: 17px;
			letter-spacing: -0.5px;
		}
	}
	.service .cont01 h2 .pc {
		display: none;
	}
	.service .cont01 .flex {
		flex-direction: column;
	}
	.service .cont01 .flex.box02 h3::before {
		background: url(../img/page/service_text04_sp.png) no-repeat center / 100%;
	}
	.service .cont01 .flex.box04 h3::before {
		background: url(../img/page/service_text08_sp.png) no-repeat center / 100%;
	}
	.service .cont01 .flex .text_box .text01 {
		margin-top: 30px;
	}
	.service .cont01 .flex.box01::after {
		content: "";
		width: 300px;
		height: 70px;
		background: url(../img/page/service_text03.png) no-repeat center / 100%;
		position: absolute;
		bottom: 0px;
		left: -10px;
		z-index: -1;
		opacity: 0.8;
	}
	@media screen and (max-width: 450px) {
		.service .cont01 .flex.box01::after {
			content: "";
			width: 250px;
			height: 60px;
			background: url(../img/page/service_text03.png) no-repeat center / 100%;
			position: absolute;
			bottom: 0px;
			left: -10px;
			z-index: -1;
			opacity: 0.8;
		}
	}
	.service .cont01 .box01 .text_box {
		width: 100%;
		max-width: 500px;
	}
	.service .cont01 .box01 .img {
		width: 90%;
		max-width: 450px;
	}
	.service .cont01 .flex.box02::after {
		content: "";
		width: 350px;
		height: 90px;
		background: url(../img/page/service_text05.png) no-repeat center / 100%;
		position: absolute;
		bottom: -25px;
		right: -10px;
		z-index: -1;
		opacity: 0.8;
	}
	@media screen and (max-width: 550px) {
		.service .cont01 .flex.box02::after {
			content: "";
			width: 300px;
			height: 80px;
			background: url(../img/page/service_text05.png) no-repeat center / 100%;
			position: absolute;
			bottom: -15px;
			right: -10px;
			z-index: -1;
			opacity: 0.8;
		}
	}
	.service .cont01 .box02 .text_box {
		width: 100%;
		max-width: 500px;
	}
	.service .cont01 .flex.box02 h3 {
		padding-left: 95px;
	}
	.service .cont01 .flex.box02 .img {
		width: 90%;
		max-width: 450px;
		margin-top: 30px;
		margin-right: 0;
	}
	.service .cont01 .box03::after {
		content: "";
		width: 350px;
		height: 120px;
		background: url(../img/page/service_text07.png) no-repeat center / 100%;
		position: absolute;
		top: 280px;
		left: -10px;
		z-index: -1;
		opacity: 0.8;
	}
	@media screen and (max-width: 530px) {
		.service .cont01 .box03::after {
			content: "";
			width: 290px;
			height: 100px;
			background: url(../img/page/service_text07.png) no-repeat center / 100%;
			position: absolute;
			top: 280px;
			left: -10px;
			z-index: -1;
			opacity: 0.8;
		}
	}
	.service .cont01 .box03 .flex:nth-of-type(2) .item_box .img {
		width: 90%;
	}
	.service .cont01 .box03 .flex:nth-of-type(1) .text_box {
		padding: 0;
		width: 100%;
		max-width: 500px;
	}
	.service .cont01 .box03 .flex:nth-of-type(1) .img {
		width: 90%;
		max-width: 450px;
		margin-top: 30px;
	}
	.service .cont01 .box03 .flex:nth-of-type(2) {
		align-items: center;
	}
	.service .cont01 .box03 .flex:nth-of-type(2) .item_box {
		width: 100%;
		max-width: 500px;
	}
	.service .cont01 .box03 .flex:nth-of-type(2) .item_box:nth-of-type(2) {
		margin-top: 30px;
	}
	.service .cont01 .box03 .flex .item_box ul {
		width: 90%;
	}
	.service .cont01 .box03 .flex .item_box ul li {
		letter-spacing: -0.3px;
	}
	.service .cont01 .box04 {
		padding-right: 0;
	}
	.service .cont01 .box04::after {
		content: "";
		width: 300px;
		height: 80px;
		background: url(../img/page/service_text09.png) no-repeat center / 100%;
		position: absolute;
		bottom: -10px;
		right: -10px;
		z-index: -1;
	}
	@media screen and (max-width: 480px) {
		.service .cont01 .box04::after {
			content: "";
			width: 280px;
			height: 70px;
			background: url(../img/page/service_text09.png) no-repeat center / 100%;
			position: absolute;
			bottom: -10px;
			right: -10px;
			z-index: -1;
		}
	}
	.service .cont01 .box04 .text_box {
		width: 100%;
		max-width: 500px;
	}
	.service .cont01 .box04 .text_box .common_btn {
		margin-top: 25px;
	}
	.service .cont01 .box04 .img {
		width: 90%;
		max-width: 450px;
		margin-top: 30px;
		margin-right: 0;
	}
	.service .cont01 .box04 .text_box .common_btn a {
		margin: auto;
	}

	/* cont02 */
	.service .cont02 {
		margin: 70px auto;
		padding: 50px 15px 70px;
	}
	.service .cont02 h2 {
		font-size: 20px;
		text-align: center;
		padding-top: 30px;
		background: url(../img/page/service_text10.png) no-repeat top center / 330px;
		white-space: nowrap;
		letter-spacing: -0.5px;
	}
	.service .cont02 .box h3 {
		font-size: 18px;
		white-space: nowrap;
	}
	.service .cont02 .box {
		margin: 50px auto 0;
		padding: 50px 10px;
		width: 100%;
	}
	.service .cont02 .box .box_item {
		width: 44%;
		margin: 0 3%;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:nth-of-type(n + 3) {
		margin-top: 30px;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:nth-of-type(4) {
		padding-top: 5px;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:nth-of-type(4) .text {
		margin-top: 14px;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:nth-of-type(7) {
		padding-top: 10px;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:nth-of-type(7) .text {
		margin-top: 15px;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:nth-of-type(9) .text {
		margin-top: 15px;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:last-of-type .text {
		margin-top: 8px;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:last-of-type .img {
		text-align: center;
	}
	.service .cont02 .box:nth-of-type(1) .box_item:last-of-type .img img {
		width: 80%;
	}
	.service .cont02 .box:nth-of-type(2) {
		padding: 50px 10px 40px;
	}
	.service .cont02 .box:nth-of-type(2) .box_item:nth-of-type(2) {
		padding-top: 5px;
	}
	.service .cont02 .box:nth-of-type(2) .box_item:nth-of-type(2) .text {
		margin-top: 15px;
	}
	.service .cont02 .box:nth-of-type(2) .box_item:nth-of-type(3) .text {
		margin-top: 15px;
	}
	.service .cont02 .box:nth-of-type(2) .box_item:nth-of-type(4) .text {
		margin-top: 14px;
	}
	.service .cont02 .box:nth-of-type(2) .box_item:nth-of-type(n + 3) {
		margin-top: 30px;
	}
	.service .cont02 .box:nth-of-type(2) .box_item:last-of-type {
		padding-top: 10px;
	}
	/* サービス end
    ------------------------------------------------------------------------*/

	/* 代表取締挨拶
    ------------------------------------------------------------------------*/

	/* key */
	.common.greeting .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.greeting .key .text::after {
		content: url(../img/page/greeting_key_text.png);
		top: -53px;
		left: 50%;
		transform: translateX(-50%);
	}

	/* cont01 */
	.greeting .cont01 {
		margin: 50px auto 80px;
	}
	.greeting .cont01 h2 {
		font-size: 22px;
		padding-top: 40px;
		background: url(../img/page/greeting_text01.png) no-repeat top center / 200px;
		margin-bottom: 35px;
	}
	.greeting .cont01 .box {
		margin-top: -10%;
		padding: 7% 7% 9% 7%;
	}
	.greeting .cont01 .box h3 {
		font-size: 20px;
		margin: 6.5% 0 6%;
	}
	.greeting .cont01 .box table th {
		width: auto;
		padding: 15px;
		display: block;
	}
	.greeting .cont01 .box table td {
		padding: 15px;
		display: block;
	}
	.greeting .cont01 .box table td span {
		padding-left: 0;
	}
	.greeting .cont01 .box table td .sp {
		display: block;
	}
	/* 代表取締挨拶 end
    ------------------------------------------------------------------------*/

	/* お問合わせ完了
    ------------------------------------------------------------------------*/

	/* key */
	.common.thanks .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.thanks .key .text::after {
		content: url(../img/page/thanks_key_text.png);
		top: -53px;
		left: 50%;
		transform: translateX(-50%);
	}

	.thanks .form-wrap .ttl {
		font-size: 16px;
		color: #008f32;
	}
	.thanks .form-wrap h2 {
		font-size: 24px;
		margin-top: 5px;
	}
	.thanks .form-wrap .read {
		font-size: 14px;
		margin-top: 20px;
	}
	.thanks .form-wrap .tel-block .box {
		width: 420px;
		max-width: 100%;
		display: inline-block;
		border: solid 1px #89d406;
		padding: 20px 20px 24px;
		text-align: center;
		margin: 40px auto 45px;
	}
	.thanks .form-wrap .tel-block .box .num {
		background: url(../img/common/svg/icon-tel.svg) no-repeat center left / 22px;
		padding-left: 28px;
		font-size: 28px;
	}
	.thanks .form-wrap .tel-block .box .note {
		font-size: 12px;
	}
	/* お問合わせ完了 end
    ------------------------------------------------------------------------*/

	/* 404
    ------------------------------------------------------------------------*/

	/* key */
	.common.yonmaru .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.yonmaru .key .text::after {
		content: url(../img/page/yonmaru_key_text.png);
		top: -53px;
		left: 50%;
		transform: translateX(-50%);
	}

	.yonmaru #info {
		padding: 50px 0 70px;
	}
	.yonmaru #info .ttl {
		font-size: 16px;
		color: #008f32;
	}
	.yonmaru #info h2 {
		font-size: 24px;
		margin-top: 5px;
	}
	.yonmaru #info .txt {
		font-size: 14px;
	}
	/* 404 end
    ------------------------------------------------------------------------*/

	/* 取り扱い保険一覧
    ------------------------------------------------------------------------*/

	/* key */
	.common.outline .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.outline .key .text::after {
		content: url(../img/page/outline_key_text.png);
		top: -53px;
		left: 50%;
		transform: translateX(-50%);
	}

	/* cont01 */
	.outline .cont01 {
		margin: 50px 0 70px;
	}
	.outline .cont01 .btn_box {
		flex-direction: column;
		align-items: center;
	}
	.outline .cont01 .btn_box .btn {
		width: 100%;
		max-width: 500px;
	}
	.outline .cont01 .btn_box .btn:nth-of-type(2) {
		margin: 15px 0;
	}
	.outline .cont01 .btn_box .btn a {
		padding: 10px 0 12px;
		font-size: 16px;
	}
	.outline .cont01 .btn_box .btn a span {
		font-size: 12px;
	}
	.outline .cont01 .box {
		margin-top: 60px;
	}
	.outline .cont01 .box h2 {
		font-size: 20px;
		padding-bottom: 20px;
	}
	.outline .cont01 .box h2::before {
		content: "";
		width: 50px;
		height: 3px;
		background: linear-gradient(90deg, #93da01 15px, #c7d3d5 15px, #c7d3d5 100%);
	}
	.outline .cont01 .box h2 span {
		font-size: 14px;
	}
	.outline .cont01 .box .flex {
		padding: 0 15px;
		margin-top: 30px;
	}
	.outline .cont01 .box .flex .flex_item {
		width: 48.5%;
		margin-right: 3%;
	}
	.outline .cont01 .box .flex .flex_item:nth-of-type(4n) {
		margin-right: 3%;
	}
	.outline .cont01 .box .flex .flex_item:nth-of-type(3n) {
		margin-right: 3%;
	}
	.outline .cont01 .box .flex .flex_item:nth-of-type(2n) {
		margin-right: 0;
	}
	.outline .cont01 .box .flex .flex_item:nth-of-type(n + 3) {
		margin-top: 4%;
	}
	.outline .cont01 .box .flex .flex_item .ttl {
		font-size: 12px;
	}
	.outline .cont01 .box .flex .flex_item .ttl br {
		display: block;
	}
	.outline .cont01 .box .flex .flex_item .img img {
		max-width: 90%;
		max-height: 90%;
		width: auto;
		height: auto;
	}
	.outline .cont01 .common_btn a {
		margin-top: 50px;
	}
	.outline .cont01 .common_btn a {
		font-size: 14px;
		width: 300px;
	}
	@media screen and (max-width: 600px) {
		.outline .cont01 .btn_box .btn {
			max-width: 300px;
		}
	}
	/* 取り扱い保険一覧 end
    ------------------------------------------------------------------------*/

	/* 会社概要
    ------------------------------------------------------------------------*/

	/* key */
	.common.overview .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.overview .key .text::after {
		content: url(../img/page/overview_key_text.png);
		top: -52px;
		left: 50%;
		transform: translateX(-50%) scale(0.9);
	}

	/* cont01 */
	.overview .cont01 {
		padding: 0 15px;
		margin: 50px auto 100px;
	}
	.overview .cont01 h2 {
		font-size: 20px;
	}
	.overview .cont01 h2:nth-of-type(2) {
		margin-top: 50px;
	}
	.overview .cont01 table {
		font-size: 14px;
		width: calc(100% + 6px);
		border-spacing: 3px;
		margin-left: -3px;
	}
	.overview .cont01 table th {
		width: 25%;
		max-width: 170px;
		padding: 15px 13px 15px 15px;
	}
	.overview .cont01 table th .tab {
		display: none;
	}
	.overview .cont01 table td {
		padding: 15px 15px 15px 15px;
	}
	.overview .cont01 table td span {
		margin-left: -7px;
	}
	.overview .cont01 table td .span01 {
		display: inline-block;
		padding-left: 35px;
		position: relative;
	}
	.overview .cont01 table td .span02 {
		position: absolute;
		top: 0;
		left: 0;
	}
	.overview .cont01 table td .span03 {
		display: inline-block;
		margin-left: 50px;
	}
	.overview .cont01 table td .span03:nth-of-type(n + 3) {
		margin-left: 78px;
	}
	.overview .cont01 table td .span03:nth-of-type(2) {
		margin-left: 20px;
	}
	.overview .cont01 table td .span03:last-of-type {
		margin-left: 50px;
	}
	.overview .cont01 table td .sp {
		display: block;
	}
	.overview .cont01 table tr:nth-of-type(12) td br {
		display: block;
	}
	.overview .cont01 table tr:nth-of-type(12) td span {
		margin-left: -7px;
	}

	@media screen and (max-width: 500px) {
		.overview .cont01 table {
			font-size: 12px;
		}
		.overview .cont01 table tr:nth-of-type(4) td {
			letter-spacing: -0.8px;
		}
		.overview .cont01 table td .span01 {
			padding-left: 30px;
		}
		.overview .cont01 table td .span03 {
			margin-left: 40px;
		}
		.overview .cont01 table td .span03:nth-of-type(n + 3) {
			margin-left: 65px;
		}
		.overview .cont01 table td .span03:nth-of-type(2) {
			margin-left: 18px;
		}
		.overview .cont01 table td .span03:last-of-type {
			margin-left: 43px;
		}
	}
	/* 会社概要 end
    ------------------------------------------------------------------------*/

	/* 勧誘方針
    ------------------------------------------------------------------------*/

	/* key */
	.common.solicitation .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.solicitation .key .text::after {
		content: url(../img/page/solicitation_key_text.png);
		top: -51px;
		left: 50%;
		transform: translateX(-50%) scale(0.85);
	}

	/* cont01 */
	.solicitation .cont01 {
		margin: 50px auto 70px;
		padding: 0 15px;
	}
	.solicitation .cont01 h2 {
		font-size: 20px;
	}
	.solicitation .cont01 .text01 {
		font-size: 14px;
		margin-top: 15px;
	}
	.solicitation .cont01 .box {
		margin-top: 30px;
	}
	.solicitation .cont01 .box h3 {
		font-size: 18px;
	}
	.solicitation .cont01 .box .item_box:nth-of-type(n + 2) {
		margin-top: 35px;
	}
	.solicitation .cont01 .box h3::before {
		background: linear-gradient(90deg, #93da01 95px, #c7d3d5 95px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(2) h3::before {
		background: linear-gradient(90deg, #93da01 115px, #c7d3d5 115px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(3) h3::before {
		background: linear-gradient(90deg, #93da01 135px, #c7d3d5 135px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(4) h3::before {
		background: linear-gradient(90deg, #93da01 150px, #c7d3d5 150px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(5) h3::before {
		background: linear-gradient(90deg, #93da01 135px, #c7d3d5 135px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(6) h3::before {
		background: linear-gradient(90deg, #93da01 170px, #c7d3d5 170px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(7) h3::before {
		background: linear-gradient(90deg, #93da01 170px, #c7d3d5 170px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(8) h3::before {
		background: linear-gradient(90deg, #93da01 260px, #c7d3d5 260px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(9) h3::before {
		background: linear-gradient(90deg, #93da01 135px, #c7d3d5 135px, #c7d3d5 100%);
	}
	.solicitation .cont01 .box .item_box:nth-of-type(10) h3::before {
		background: linear-gradient(90deg, #93da01 180px, #c7d3d5 180px, #c7d3d5 100%);
	}
	/* 勧誘方針 end
    ------------------------------------------------------------------------*/

	/* 個人情報保護方針
    ------------------------------------------------------------------------*/

	/* key */
	.common.privacy .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.privacy .key .text::after {
		content: url(../img/page/privacy_key_text.png);
		top: -58px;
		left: 50%;
		transform: translateX(-50%) scale(0.75);
	}

	/* cont01 */
	.privacy .sp {
		display: none;
	}
	.privacy .cont01 {
		margin: 50px auto 70px;
		padding: 0 15px;
	}
	.privacy .cont01 .text02 {
		font-size: 13px;
	}
	.privacy .cont01 h2 {
		font-size: 22px;
	}
	.privacy .cont01 .box h3 {
		white-space: normal;
		font-size: 18px;
	}
	.privacy .cont01 table th {
		width: auto;
		vertical-align: middle;
		padding: 15px 15px 15px 20px;
	}
	.privacy .cont01 table td {
		padding: 15px 15px 15px 20px;
		font-size: 13px;
	}
	.privacy .cont01 table td .sp {
		display: block;
	}
	/* 個人情報保護方針 end
    ------------------------------------------------------------------------*/

	/* ディスクロージャー
    ------------------------------------------------------------------------*/

	/* key */
	.common.disclosure .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.disclosure .key .text::after {
		content: url(../img/page/disclosure_key_text.png);
		top: -50px;
		left: 50%;
		transform: translateX(-50%) scale(0.8);
	}

	/* cont01 */
	.disclosure .cont01 {
		margin: 50px auto 70px;
		padding: 0 15px;
	}
	.disclosure .cont01 h2 {
		font-size: 18px;
		padding-left: 10px;
	}
	.disclosure .cont01 table {
		margin-top: 5px;
	}
	.disclosure .cont01 tr {
		display: flex;
		width: 100%;
		flex-direction: column;
		padding: 15px;
		background: #49b117;
	}
	.disclosure .cont01 tr:first-of-type {
		display: none;
	}
	.disclosure .cont01 tr:nth-of-type(n + 2) {
		background: #f2f2f2;
		margin-top: 10px;
	}
	.disclosure .cont01 table th,
	.disclosure .cont01 table td {
		padding: 0;
		background: none;
	}
	.disclosure .cont01 table td:first-of-type {
		width: 100%;
		font-weight: bold;
	}
	.disclosure .cont01 table td:nth-of-type(2) {
		width: 100%;
	}
	.disclosure .cont01 table th:nth-of-type(n + 2),
	.disclosure .cont01 table td:nth-of-type(n + 2) {
		margin-top: 5px;
	}
	/* ディスクロージャー end
    ------------------------------------------------------------------------*/

	/* 個人情報共同利用企業一覧表
    ----------------------------------------------------------- */

	/* key */
	.common.partner .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.partner .key .text::after {
		content: url(../img/page/partner_key_text.png);
		top: -53px;
		left: 50%;
		transform: translateX(-50%);
	}

	/* cont01 */
	.partner .cont01 {
		padding: 0 15px;
		margin: 50px auto 80px;
	}
	.partner .cont01 h2 {
		padding-left: 15px;
		line-height: 1.3;
		font-size: 18px;
	}
	.partner .cont01 table {
		border-collapse: collapse;
		border-spacing: 0px;
		width: 100%;
		margin: 20px 0 0 0;
		text-align: left;
		font-size: 14px;
	}
	.partner .cont01 table tr {
		display: flex;
		flex-direction: column;
		width: 100%;
	}
	.partner .cont01 table tr:nth-of-type(n + 2) {
		margin-top: 15px;
	}
	.partner .cont01 table th,
	.partner .cont01 table td {
		padding: 15px;
		box-sizing: border-box;
		vertical-align: middle;
	}
	.partner .cont01 table th {
		width: 100%;
	}
	/* 個人情報共同利用企業一覧表 end
    ----------------------------------------------------------- */

	/* お問合わせ
    ----------------------------------------------------------- */

	/* key */
	.common.contact .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.contact .key .text::after {
		content: url(../img/page/contact_key_text.png);
		top: -55px;
		left: 50%;
		transform: translateX(-50%);
	}

	/* cont01 */
	.contact .cont01 {
		margin: 50px auto 0;
		padding: 0 15px;
	}
	.contact .cont01 .tel {
		margin-top: 15px;
		font-size: 14px;
	}
	.contact .cont01 .tel a {
		font-size: 36px;
		line-height: 1.4;
	}
	.contact .cont01 .text01 {
		font-size: 14px;
		margin: 20px 0 0 15px;
	}

	/* cont02 */
	.contact .cont02 {
		padding: 0 15px;
		margin: 50px auto 70px;
	}
	.contact .cont02 table {
		font-size: 14px;
	}
	.contact .cont02 table tr {
		display: flex;
		flex-direction: column;
	}
	.contact .cont02 table tr:nth-of-type(n + 2) {
		margin-top: 10px;
	}
	.contact .cont02 table th {
		width: 100%;
		padding: 10px 15px;
	}
	.contact .cont02 table tr:first-of-type th {
		height: auto;
	}
	.contact .cont02 table th span {
		justify-content: flex-start;
	}
	.contact .cont02 table th span.span02 {
		margin-left: 20px;
	}
	.contact .cont02 table tr:first-of-type td {
		padding-top: 20px;
		padding-left: 12px;
	}
	.contact.confirm .cont02 table tr td {
		padding: 10px 15px;
	}
	.contact.confirm .cont02 table tr:first-of-type td {
		padding-top: 10px;
		padding-left: 15px;
	}
	.contact.confirm .cont02 table tr:last-of-type td {
		padding-top: 10px;
	}
	.contact .cont02 table tr:first-of-type td label {
		margin-right: 30px;
		margin-bottom: 15px;
	}
	.contact .cont02 table tr:nth-of-type(6) td label {
		padding-left: 15px;
		white-space: nowrap;
	}
	.contact .cont02 table tr:nth-of-type(6) td label input {
		margin-left: 10px;
	}
	.contact .cont02 table tr:nth-of-type(6) td label:last-of-type input {
		margin-left: 25px;
	}
	.contact.confirm .cont02 table tr:nth-of-type(6) td label {
		padding-left: 0px;
	}
	.contact .cont02 table td input[type="text"],
	.contact .cont02 table td input[type="tel"],
	.contact .cont02 table td input[type="email"] {
		font-size: 14px;
		padding-left: 15px;
	}
	.contact .cont02 table td input[name="zip21"] {
		width: 80px !important;
		margin-right: 30px;
	}
	.contact .cont02 table td input[name="zip22"] {
		width: 100px !important;
	}
	.contact .cont02 table tr:nth-of-type(6) td label:first-of-type::before {
		left: 185px;
	}
	.contact .cont02 .privacy_check {
		font-size: 14px;
		margin-top: 35px;
	}
	.contact .cont02 .button {
		width: 100%;
	}
	.contact .cont02 .button input[type="submit"] {
		width: 320px !important;
		margin: auto;
	}
	.contact .cont02 h3.pp_title {
		width: 100%;
		margin-top: 50px;
	}
	.contact .cont02 .pp_box {
		width: 100%;
		height: 250px;
		padding: 25px 15px;
		font-size: 14px;
		line-height: 1.8;
	}
	.contact .cont02 .pp_box h4 {
		font-size: 16px;
	}
	.contact .cont02 .pp_box h5 {
		margin-top: 20px;
	}
	.contact .cont02 .pp_box h6 {
		margin-top: 10px;
	}
	.contact .cont02 .pp_box .text02 {
		margin-top: 7px;
	}
	/* お問合わせ end
    ----------------------------------------------------------- */

	/* 医療法人協会様へのご案内
    ----------------------------------------------------------- */

	/* key */
	.common.guidance .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.guidance .key .text::after {
		content: url(../img/page/guidance_key_text.png);
		top: -55px;
		left: 50%;
		transform: translateX(-50%);
	}

	/* cont01 */
	.guidance .cont01 {
		padding: 0 15px;
		margin: 50px auto 0;
	}
	.guidance .cont01 .box {
		padding: 35px 20px 0;
	}
	.guidance .cont01 h2 {
		font-size: 20px;
		margin-top: 60px;
	}
	.guidance .cont01 .img02,
	.guidance .cont01 .img03 {
		margin-top: 30px;
	}

	/* cont02 */
	.guidance .cont02 {
		padding: 0 15px;
		box-sizing: border-box;
		width: 100%;
		margin-top: 50px;
	}
	.guidance .cont02 table tr {
		display: flex;
		flex-direction: column;
	}
	.guidance .cont02 table tr:nth-of-type(n + 2) {
		margin-top: 15px;
	}
	.guidance .cont02 table tr th,
	.guidance .cont02 table tr td {
		width: 100%;
		font-size: 14px;
	}
	.guidance .cont02 table tr th {
		height: auto;
		padding: 12px 10px 12px 15px;
	}
	.guidance .cont02 table th span {
		justify-content: flex-start;
	}
	.guidance .cont02 table th span.span02 {
		margin-left: 15px;
		font-size: 12px;
		line-height: 1;
		padding: 5px 10px;
	}
	.guidance .cont02 table td input[type="text"],
	.guidance .cont02 table td input[type="tel"],
	.guidance .cont02 table td input[type="email"] {
		font-size: 14px;
		padding-left: 10px;
	}
	.guidance .cont02 table tr:nth-of-type(8) td .mwform-checkbox-field:nth-of-type(n + 2),
	.guidance .cont02 table tr:nth-of-type(9) td .mwform-checkbox-field:nth-of-type(n + 2) {
		margin-top: 20px;
	}
	.guidance .cont02 .button input[type="submit"] {
		width: 320px !important;
		margin: auto;
	}

	/* 医療法人協会様へのご案内 end
    ----------------------------------------------------------- */

	/* 保険代理店経営者の皆様へ
    ------------------------------------------------------------------------*/

	/* key */
	.common.agency .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.agency .key .text::after {
		content: url(../img/page/agency_key_text.png);
		top: -55px;
		left: 50%;
		transform: translateX(-50%) scale(0.8);
	}

	/* cont01 */
	.agency .cont01 {
		padding: 0 15px;
		margin-top: 50px;
	}
	.agency .cont01 .video {
		height: auto;
		aspect-ratio: 16/9;
	}
	.agency .cont01 .text_box h2 {
		font-size: 28px;
		padding-top: 25px;
	}
	.agency .cont01 .text_box .text {
		margin-top: 8%;
	}
	.agency .cont01 .text_box .text span {
		font-size: 20px;
	}

	/* cont02 */
	.agency .cont02 {
		margin: 70px auto 0;
		padding: 0 15px;
	}
	.agency .cont02 h2 {
		font-size: 20px;
		padding-top: 7%;
		background: url(../img/page/agency_text02.png) no-repeat top center / 90%;
	}
	.agency .cont02 h2 span {
		display: inline-block;
		margin-left: -15px;
	}
	.agency .cont02 .flex {
		margin-top: 30px;
	}
	.agency .cont02 .flex .box:nth-of-type(2) {
		margin-top: 15px;
	}
	.agency .cont02 .flex .box {
		padding: 30px 15px;
	}
	.agency .cont02 .flex .box h3 {
		font-size: 18px;
		white-space: nowrap;
	}
	.agency .cont02 .flex .box:first-of-type h3 {
		font-size: 17px;
	}
	.agency .cont02 .flex .box h3::before {
		padding-right: 5px;
	}
	.agency .cont02 .flex .box h3::after {
		padding-left: 5px;
	}
	.agency .cont02 .flex .box .img {
		margin-top: 20px;
	}
	@media screen and (max-width: 580px) {
		.agency .cont02 .flex .box .text {
			font-size: 16px;
			height: 100px;
			padding: 7% 15% 7% 42%;
			background: #fff url(../img/page/agency_icon02.png) no-repeat center left 25% / 15%;
		}
		.agency .cont02 .flex .box .text:nth-of-type(2) {
			background: #fff url(../img/page/agency_icon03.png) no-repeat center left 25% / 16%;
		}
		.agency .cont02 .flex .box .text:nth-of-type(3) {
			background: #fff url(../img/page/agency_icon04.png) no-repeat center left 25% / 15%;
		}
	}
	@media screen and (max-width: 480px) {
		.agency .cont02 .flex .box .text {
			font-size: 14px;
			height: 90px;
			padding: 7% 10% 7% 35%;
			background: #fff url(../img/page/agency_icon02.png) no-repeat center left 20% / 13%;
		}
		.agency .cont02 .flex .box .text:nth-of-type(2) {
			background: #fff url(../img/page/agency_icon03.png) no-repeat center left 20% / 14%;
		}
		.agency .cont02 .flex .box .text:nth-of-type(3) {
			background: #fff url(../img/page/agency_icon04.png) no-repeat center left 20% / 13%;
		}
	}
	@media screen and (max-width: 420px) {
		.agency .cont02 .flex .box .text {
			padding: 7% 7% 7% 31%;
			background: #fff url(../img/page/agency_icon02.png) no-repeat center left 15% / 13%;
		}
		.agency .cont02 .flex .box .text:nth-of-type(2) {
			white-space: nowrap;
			background: #fff url(../img/page/agency_icon03.png) no-repeat center left 15% / 14%;
		}
		.agency .cont02 .flex .box .text:nth-of-type(3) {
			background: #fff url(../img/page/agency_icon04.png) no-repeat center left 15% / 13%;
		}
	}

	/* cont03 */
	.agency .cont03 {
		margin: 70px auto 0;
		padding: 60px 0 50px;
		background: url(../img/page/agency_bg01.png) no-repeat center / cover;
	}
	.agency .cont03 h2 {
		font-size: 22px;
		padding-bottom: 25px;
	}
	.agency .cont03 .flex {
		flex-direction: column;
		align-items: center;
		padding: 0 15px;
	}
	.agency .cont03 .flex .box {
		width: 100%;
		max-width: 500px;
		padding: 75px 8% 70px;
		background-position: top 18px center, bottom 18px center;
	}
	.agency .cont03 .flex .box:nth-of-type(n + 2) {
		margin-top: 45px;
	}
	.agency .cont03 .flex .box:nth-of-type(2) {
		padding: 75px 20px 70px;
	}
	.agency .cont03 .flex .box h3 {
		font-size: 20px;
	}
	.agency .cont03 .flex .box:first-of-type h3 {
		letter-spacing: 0;
	}
	.agency .cont03 .flex .box .text {
		font-size: 14px;
	}
	.agency .cont03 .flex .box:nth-of-type(2) .text {
		display: flex;
		justify-content: center;
		letter-spacing: -0.5px;
	}
	.agency .cont03 .text02 {
		padding: 0 15px;
		font-size: 16px;
		margin-top: 40px;
		line-height: 1.8;
	}
	.agency .cont03 .text02 span {
		font-size: 22px;
		margin-bottom: 15px;
	}
	.agency .cont03 .text02 span:first-of-type {
		margin-bottom: 0;
	}

	/* cont04 */
	.agency .cont04 {
		margin: 70px auto 0;
		padding: 0;
	}
	.agency .cont04 h2 {
		font-size: 22px;
		padding-bottom: 25px;
	}
	.agency .cont04 .box {
		width: calc(100% - 70px);
		padding: 0;
		margin-top: 50px;
		display: flex;
		flex-direction: column-reverse;
	}
	.agency .cont04 .box:nth-of-type(n + 2) {
		margin-top: 100px;
	}
	.agency .cont04 .box:nth-of-type(2) {
		padding: 0;
	}
	.agency .cont04 .box::after {
		content: "";
		width: calc(100% + 45px);
	}
	.agency .cont04 .box h3::before {
		content: "";
		width: 100%;
		right: 0;
	}
	.agency .cont04 .box h3 {
		font-size: 20px;
	}
	.agency .cont04 .box h3::after {
		top: -55px;
		left: 0;
		width: 190px;
		height: 35px;
	}
	.agency .cont04 .box ul li {
		font-size: 14px;
	}
	.agency .cont04 .box .text_box {
		margin-top: 80px;
	}
	.agency .cont04 .box .img {
		position: static;
	}
	@media screen and (max-width: 500px) {
		.agency .cont04 .box:nth-of-type(n + 2) {
			margin-top: 80px;
		}
		.agency .cont04 .box::after {
			content: "";
			height: 90%;
			bottom: -35px;
		}
		.agency .cont03 .flex .box:nth-of-type(2) .text {
			font-size: 13px;
		}
	}

	/* cont05 */
	.agency .cont05 {
		margin-top: 130px;
		padding: 70px 15px;
	}
	.agency .cont05 h2 {
		font-size: 22px;
		padding-bottom: 25px;
	}
	.agency .cont05 .flex {
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
	}
	.agency .cont05 .flex .box {
		background: #f2f2f2 url(../img/page/agency_icon10.png) no-repeat top 40px center;
		width: 100%;
		max-width: 500px;
		padding: 185px 0 35px;
	}
	.agency .cont05 .flex .box:nth-of-type(2) {
		background: #f2f2f2 url(../img/page/agency_icon11.png) no-repeat top 50px center;
	}
	.agency .cont05 .flex .box:nth-of-type(3) {
		background: #f2f2f2 url(../img/page/agency_icon13.png) no-repeat top 42px center;
	}
	.agency .cont05 .flex .box:nth-of-type(n + 2) {
		margin-top: 30px;
	}
	.agency .cont05 .flex02 {
		flex-direction: column;
	}
	.agency .cont05 .flex02 .img {
		width: 40%;
	}
	.agency .cont05 .flex02 .box02 {
		margin: 15px auto 0;
		width: 100%;
	}
	.agency .cont05 .flex02 .box02 li {
		width: 31%;
		padding-top: 31%;
	}
	.agency .cont05 .flex02 .box02 li:nth-of-type(3) {
		margin-top: 0;
	}
	.agency .cont05 .flex02 .box02 li:nth-of-type(n + 4) {
		margin-top: 15px;
	}
	.agency .cont05 .flex02 .box02 li h3 {
		font-size: 18px;
	}
	@media screen and (max-width: 520px) {
		.agency .cont05 .flex02 .img {
			width: 70%;
		}
		.agency .cont05 .flex02 .box02 li {
			width: 48%;
			padding-top: 48%;
		}
		.agency .cont05 .flex02 .box02 li:nth-of-type(n + 3) {
			margin-top: 15px;
		}
		.agency .cont05 h2 {
			font-size: 20px;
			letter-spacing: -0.5px;
			padding-bottom: 25px;
		}
	}

	/* cont06 */
	.agency .cont06 {
		margin: 70px auto 80px;
		padding: 0 15px;
	}
	.agency .cont06 h2 {
		font-size: 22px;
		padding-bottom: 25px;
	}
	.agency .cont06 .flex .text_box {
		margin-top: 25px;
	}
	.agency .cont06 .flex .text_box h3 {
		margin-bottom: 20px;
		font-size: 16px;
	}
	.agency .cont06 .flex .text_box h3 span {
		font-size: 22px;
	}
	.agency .cont06 .flex .text_box .text {
		font-size: 14px;
	}
	.agency .cont06 .box {
		margin: 45px auto 0;
	}
	.agency .cont06 .box .ttl {
		font-size: 16px;
		padding-left: 22px;
	}
	.agency .cont06 .box .text02 {
		margin-top: 15px;
	}
	/* 保険代理店経営者の皆様へ end
    ------------------------------------------------------------------------*/

	/* お客様本位の業務運営
    ------------------------------------------------------------------------*/

	/* key */
	.common.hospitality .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.hospitality .key .text::after {
		content: url(../img/page/hospitality_key_text.png);
		top: -55px;
		left: 50%;
		transform: translateX(-50%) scale(0.8);
	}

	/* cont01 */
	.hospitality .cont01 {
		padding: 0 15px;
		margin: 50px auto 0;
	}
	.hospitality .cont01 .box h2 {
		font-size: 24px;
	}
	.hospitality .cont01 .box02 {
		margin-top: 50px;
		flex-direction: column;
	}
	.hospitality .cont01 .box02 h3 {
		padding: 35px 15px 15px;
	}
	.hospitality .cont01 .box02 h3::before {
		top: 17px;
		left: 15px;
		transform: none;
	}
	.hospitality .cont01 .box02 .text02 {
		padding: 15px;
		line-height: 2;
	}
	.hospitality .cont01 .box03 .ttl {
		margin-top: 50px;
		font-size: 19px;
		padding-left: 10px;
		letter-spacing: -0.5px;
	}
	.hospitality .cont01 .box03 .ttl span {
		font-size: 14px;
		margin-left: -5px;
		letter-spacing: -0.5px;
	}
	.hospitality .cont01 .box03 table {
		font-size: 14px;
	}
	.hospitality .cont01 .box03 table th,
	.hospitality .cont01 .box03 table td {
		vertical-align: middle;
		padding: 15px;
	}
	.hospitality .cont01 .box03 table th {
		width: 30%;
	}

	/* cont02 */
	.hospitality .cont02 {
		margin-top: 70px;
		padding: 60px 0 80px;
	}
	.hospitality .cont02 .inner {
		padding: 0 15px;
	}
	.hospitality .cont02 h2 {
		font-size: clamp(22px, 3.3vw, 24px);
		background: url(../img/page/hospitality_text02.png) no-repeat top center / 350px;
		padding: 50px 0 35px;
	}
	.hospitality .cont02 ul {
		flex-direction: column;
		margin-top: 55px;
		align-items: center;
	}
	.hospitality .cont02 ul li {
		width: 100%;
		max-width: 400px;
		font-size: 18px;
		min-height: 180px;
	}
	.hospitality .cont02 ul li:nth-of-type(n + 2) {
		margin-top: 30px;
	}
	.hospitality .cont02 .box {
		margin-top: 60px;
		padding: 45px 15px 40px;
	}
	.hospitality .cont02 .box:nth-of-type(2) {
		padding: 45px 15px 40px;
	}
	.hospitality .cont02 .box:nth-of-type(3) {
		padding: 45px 15px 40px;
	}
	.hospitality .cont02 .box h3 {
		font-size: 20px;
		position: static;
		transform: none;
		margin-bottom: 25px;
	}
	.hospitality .cont02 .box .ttl {
		font-size: 16px;
		margin-top: 30px;
		padding-bottom: 14px;
		margin-bottom: 12px;
	}
	.hospitality .cont02 .box .ttl::before {
		background: linear-gradient(90deg, #93da01 70px, #c7d3d5 70px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl02::before {
		background: linear-gradient(90deg, #93da01 80px, #c7d3d5 80px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl03::before {
		background: linear-gradient(90deg, #93da01 95px, #c7d3d5 95px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl04::before {
		background: linear-gradient(90deg, #93da01 110px, #c7d3d5 110px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl05::before {
		background: linear-gradient(90deg, #93da01 100px, #c7d3d5 100px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl06::before {
		background: linear-gradient(90deg, #93da01 130px, #c7d3d5 130px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl07::before {
		background: linear-gradient(90deg, #93da01 130px, #c7d3d5 130px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl08::before {
		background: linear-gradient(90deg, #93da01 210px, #c7d3d5 210px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl09::before {
		background: linear-gradient(90deg, #93da01 100px, #c7d3d5 100px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .ttl10::before {
		background: linear-gradient(90deg, #93da01 130px, #c7d3d5 130px, #c7d3d5 100%);
	}
	.hospitality .cont02 .box .box_item .text_box {
		margin-top: 20px;
	}
	.hospitality .cont02 .box .box_item .text03 {
		background: url(../img/page/hospitality_icon06.png) no-repeat center / 100%;
		width: 102px;
		height: 113px;
	}
	.hospitality .cont02 .box .box_item .text03:nth-of-type(2) {
		margin: 0 30px;
	}
	.hospitality .cont02 .box .box_item .text03:nth-of-type(2)::before {
		left: -25px;
		transform: translateY(-50%) scale(0.8);
	}
	.hospitality .cont02 .box .box_item .text03:nth-of-type(2)::after {
		right: -25px;
		transform: translateY(-50%) scale(0.8);
	}
	@media screen and (max-width: 500px) {
		.hospitality .cont02 .box .box_item .text03 {
			background: url(../img/page/hospitality_icon06.png) no-repeat center / 100%;
			width: 82px;
			height: 93px;
		}
	}
	.hospitality .cont02 .box .box_item .text04 {
		font-size: 16px;
		letter-spacing: -0.8px;
	}
	.hospitality .cont02 .box .box_item02 {
		flex-direction: column;
		margin-top: 35px;
	}
	.hospitality .cont02 .box .box_item02 .text05 {
		width: 90px;
		height: 90px;
		margin-bottom: 60px;
	}
	.hospitality .cont02 .box .box_item02 .text05 span {
		font-size: 26px;
		width: 70px;
		height: 70px;
	}
	.hospitality .cont02 .box .box_item02 .text05 span::before {
		content: "";
		width: 2px;
		height: 35px;
		background: #91d901;
		position: absolute;
		top: auto;
		bottom: -35px;
		right: 50%;
		transform: translate(50%, 0);
	}
	.hospitality .cont02 .box .box_item02 .text_box {
		display: flex;
		justify-content: space-between;
		margin-left: 0;
	}
	.hospitality .cont02 .box .box_item02 .text_box::before {
		content: "";
		width: calc(50% + 6px);
		height: 2px;
		top: -37px;
		left: 50%;
		transform: translate(-50%, 0);
	}
	.hospitality .cont02 .box .box_item02 .text_box .text_box_item {
		flex-direction: column;
		width: 49%;
	}
	.hospitality .cont02 .box .box_item02 .text_box .text_box_item:nth-of-type(2) {
		margin-top: 0;
	}
	.hospitality .cont02 .box .box_item02 .text_box .text_box_item::before {
		top: -30px;
		left: 50%;
		transform: translate(-50%, 0) rotateZ(90deg) scale(0.8);
	}
	.hospitality .cont02 .box .box_item02 .text_box .text_box_item .ttl02 {
		font-size: 16px;
		width: 100%;
		padding: 10px 0;
		margin-right: 0;
	}
	.hospitality .cont02 .box .box_item02 .text_box .text_box_item .text06 {
		background: #fff;
		padding: 15px 10px;
		border: 2px solid #dbefd1;
		border-top: none;
	}
	.hospitality .cont02 .box .box_item02 .text_box .text_box_item:nth-of-type(2) .text06 {
		border: 2px solid #d2ecf2;
	}

	/* cont03 */
	.hospitality .cont03 {
		margin-top: 60px;
		padding: 0 15px;
	}
	.hospitality .cont03 h2 {
		font-size: clamp(22px, 3.3vw, 24px);
		padding-bottom: 35px;
	}
	.hospitality .cont03 .flex .text {
		width: 49%;
		font-size: 13px;
		letter-spacing: -0.3px;
		min-height: 190px;
		padding: 9% 3% 7.5%;
	}
	.hospitality .cont03 .flex .text::before {
		content: "";
		width: 50px;
		height: 50px;
		background: url(../img/page/hospitality_icon01.png) no-repeat center / 100%;
	}
	.hospitality .cont03 .flex .text:nth-of-type(2)::before {
		content: "";
		background: url(../img/page/hospitality_icon02.png) no-repeat center / 100%;
	}
	.hospitality .cont03 .flex .text:nth-of-type(3)::before {
		content: "";
		background: url(../img/page/hospitality_icon03.png) no-repeat center / 100%;
	}
	.hospitality .cont03 .flex .text:nth-of-type(4)::before {
		content: "";
		background: url(../img/page/hospitality_icon08.png) no-repeat center / 100%;
	}
	.hospitality .cont03 .flex .text:nth-of-type(5)::before {
		content: "";
		background: url(../img/page/hospitality_icon09.png) no-repeat center / 100%;
	}
	.hospitality .cont03 .flex .text:nth-of-type(6)::before {
		content: "";
		background: url(../img/page/hospitality_icon10.png) no-repeat center / 100%;
	}
	.hospitality .cont03 .box {
		padding: 45px 15px 40px;
		margin-top: 50px;
	}
	.hospitality .cont03 .box h3 {
		font-size: 20px;
		position: static;
		transform: none;
		margin-bottom: 30px;
		padding-right: 0;
	}
	.hospitality .cont03 .box:nth-of-type(6) h3 {
		font-size: 19px;
	}
	.hospitality .cont03 .box h3::before {
		content: "[";
		padding-right: 7px;
	}
	.hospitality .cont03 .box h3::after {
		content: "]";
		padding-left: 7px;
	}
	.hospitality .cont03 .box .ttl {
		font-size: 16px;
		margin-top: 30px;
		padding-bottom: 14px;
		margin-bottom: 12px;
	}
	.hospitality .cont03 .box .ttl::before {
		background: linear-gradient(90deg, #93da01 140px, #c7d3d5 140px, #c7d3d5 100%);
	}
	.hospitality .cont03 .box:nth-of-type(3) .ttl02:first-of-type::before {
		background: linear-gradient(90deg, #93da01 230px, #c7d3d5 230px, #c7d3d5 100%);
	}
	.hospitality .cont03 .box:nth-of-type(4) .ttl02::before {
		background: linear-gradient(90deg, #93da01 170px, #c7d3d5 170px, #c7d3d5 100%);
	}
	.hospitality .cont03 .box:nth-of-type(4) .ttl03::before {
		background: linear-gradient(90deg, #93da01 160px, #c7d3d5 160px, #c7d3d5 100%);
	}
	.hospitality .cont03 .box:nth-of-type(5) .ttl02::before {
		background: linear-gradient(90deg, #93da01 115px, #c7d3d5 115px, #c7d3d5 100%);
	}
	.hospitality .cont03 .box:nth-of-type(6) .ttl02::before {
		background: linear-gradient(90deg, #93da01 130px, #c7d3d5 130px, #c7d3d5 100%);
	}
	.hospitality .cont03 .box:nth-of-type(7) .ttl02::before {
		background: linear-gradient(90deg, #93da01 100px, #c7d3d5 100px, #c7d3d5 100%);
	}
	.hospitality .cont03 .box .text_box {
		flex-direction: column;
		align-items: flex-start;
		margin-top: 30px;
	}
	.hospitality .cont03 .box .text_box .img02 {
		margin-left: 0;
		margin-top: 10px;
	}
	.hospitality .cont03 .box ul li {
		margin-bottom: 15px;
	}
	.hospitality .cont03 .box .box_item {
		flex-direction: column;
	}
	.hospitality .cont03 .box .box_item .box_item_child {
		width: 100%;
		max-width: 500px;
	}
	.hospitality .cont03 .box .box_item .box_item_child:nth-of-type(2) {
		margin-left: 0;
		width: 100%;
		margin-top: 20px;
	}
	.hospitality .cont03 .box .box_item .box_item_child .img03 {
		padding: 30px;
	}
	.hospitality .cont03 .box .box_item .box_item_child:nth-of-type(2) .img03 {
		padding: 30px;
	}
	.hospitality .cont03 .box .box_item .box_item_child .text04 {
		width: calc(100% + 1px);
	}

	/* cont04 */
	.hospitality .cont04 {
		margin: 70px 0;
		padding: 60px 0;
	}
	.hospitality .cont04 .inner {
		padding: 0 15px;
	}
	.hospitality .cont04 h2 {
		font-size: clamp(22px, 3.3vw, 24px);
		background: url(../img/page/hospitality_text04.png) no-repeat top center / 300px;
		padding: 45px 0 35px;
	}
	.hospitality .cont04 .flex {
		flex-direction: column;
		align-items: center;
	}
	.hospitality .cont04 .flex .text {
		width: 100%;
		max-width: 400px;
		font-size: 18px;
		padding: 8.5% 3% 7%;
	}
	.hospitality .cont04 .flex .text:nth-of-type(n + 2) {
		margin-top: 40px;
	}
	.hospitality .cont04 .flex .text:nth-of-type(3) {
		font-size: 17px;
	}
	.hospitality .cont04 .flex .text .span01 {
		flex-direction: row;
		white-space: nowrap;
	}
	.hospitality .cont04 .flex .text::before {
		content: "";
		width: 60px;
		height: 60px;
		background: url(../img/page/hospitality_icon01.png) no-repeat center / 100%;
	}
	.hospitality .cont04 .flex .text:nth-of-type(2)::before {
		content: "";
		background: url(../img/page/hospitality_icon02.png) no-repeat center / 100%;
	}
	.hospitality .cont04 .flex .text:nth-of-type(3)::before {
		content: "";
		background: url(../img/page/hospitality_icon03.png) no-repeat center / 100%;
	}
	.hospitality .cont04 .box {
		padding: 45px 15px 40px;
		margin-top: 60px;
		overflow: hidden;
	}
	.hospitality .cont04 .box h3 {
		font-size: 18px;
		position: static;
		transform: none;
		margin-bottom: 30px;
		padding-right: 0;
		letter-spacing: -0.5px;
	}
	.hospitality .cont04 .box h3:before {
		padding-right: 5px;
	}
	.hospitality .cont04 .box h3:after {
		padding-left: 5px;
	}
	.hospitality .cont04 .box .text02 {
		display: flex;
		flex-direction: column;
		height: auto;
		padding: 30px 0;
	}
	.hospitality .cont04 .box .text02 span {
		padding: 60px 0 0 0;
		position: relative;
		background: none;
	}
	.hospitality .cont04 .box .text02 span::before {
		content: url(../img/page/hospitality_icon13.png);
		position: absolute;
		top: 10px;
		left: 50%;
		transform: translateX(-50%) rotateZ(90deg);
	}
	.hospitality .cont04 .box .text02 span.span01::before {
		display: none;
	}
	.hospitality .cont04 .box .flex02 .flex_box {
		width: 32%;
		padding: 15px;
	}
	.hospitality .cont04 .box .flex02 .flex_box .text04 {
		font-size: 15px;
		letter-spacing: -1px;
	}
	.hospitality .cont04 .box .flex02 .flex_box:nth-of-type(2) .img img {
		width: 90%;
	}
	.hospitality .cont04 .box .flex02 .flex_box:nth-of-type(3) .img img {
		width: 80%;
	}
	.hospitality .cont04 .box .ttl02 {
		font-size: 18px;
	}
	.hospitality .cont04 .box .table_box {
		overflow-x: auto;
	}
	.hospitality .cont04 .box table {
		font-size: 14px;
		/* overflow-x: scroll; */
		/* min-width: 400px; */
	}
	@media screen and (max-width: 500px) {
		.hospitality .cont04 .box table {
			font-size: 12px;
		}
		.hospitality .cont04 .box table br {
			display: block;
		}
		.hospitality .cont04 .box table td:first-of-type {
			padding: 10px;
			white-space: nowrap;
		}
		.hospitality .cont04 .box table tr:first-of-type th:first-of-type {
			white-space: nowrap;
		}
	}
	.hospitality .cont04 .box .flex03 {
		flex-direction: column;
	}
	.hospitality .cont04 .box .flex03 .flex_box02 {
		width: 100%;
		padding: 20px 20px 25px;
	}
	.hospitality .cont04 .box .flex03 .flex_box02:nth-of-type(2) {
		margin: 30px 0;
	}
	.hospitality .cont04 .box .flex03 .flex_box02 .text05 {
		font-size: 14px;
	}
	.hospitality .cont04 .box .flex03 .flex_box02 .text05 span {
		font-size: 18px;
	}
	.hospitality .cont04 .box02 {
		margin-top: 50px;
	}
	.hospitality .cont04 .box02 h3 {
		font-size: 18px;
	}
	.hospitality .cont04 .box02 .text06 {
		margin: 30px auto 35px;
	}
	/* お客様本位の業務運営 end
    ------------------------------------------------------------------------*/

	/* 経営理念
    ------------------------------------------------------------------------*/

	/* key */
	.common.philosophy .key .text {
		padding: 0;
		padding-top: 20px;
		font-size: 16px;
	}
	.common.philosophy .key .text::after {
		content: url(../img/page/philosophy_key_text.png);
		top: -50px;
		left: 50%;
		transform: translateX(-50%) scale(0.7);
	}

	/* cont01 */
	.philosophy .cont01 {
		margin: 50px auto 0;
		padding: 10px 15px 50px;
		background-position: top left 15px, top right 15px, bottom right 15px, bottom 0px left 15px;
		background-size: 140px, 110px, 140px, 110px;
	}
	.philosophy .cont01 .img {
		margin-top: 40px;
	}
	.philosophy .cont01 h2 {
		font-size: 24px;
		letter-spacing: -1px;
	}
	@media screen and (max-width: 580px) {
		.philosophy .cont01 h2 {
			background: url(../img/page/philosophy_text01.png) no-repeat top center / 100%;
		}
	}
	@media screen and (max-width: 500px) {
		.philosophy .cont01 {
			margin: 50px auto 0;
			padding: 10px 15px 30px;
			background-size: 100px, 80px, 100px, 80px;
		}
		.philosophy .cont01 h2 {
			padding-top: 25px;
		}
	}
	@media screen and (max-width: 430px) {
		.philosophy .cont01 h2 {
			padding-top: 20px;
		}
	}

	/* cont02 */
	.philosophy .cont02 {
		margin-top: 50px;
		overflow-x: hidden;
	}
	.philosophy .cont02 .inner {
		padding: 70px 15px 70px;
	}
	.philosophy .cont02 h2 {
		font-size: 24px;
		padding: 40px 0 30px;
		background: url(../img/page/philosophy_text02.png) no-repeat top center / 200px;
	}
	.philosophy .cont02 h3 {
		font-size: 18px;
		text-align: center;
		margin: 40px 0 20px;
	}
	.philosophy .cont02 .text {
		font-size: 14px;
	}
	.philosophy .cont02 h3:nth-of-type(2) {
		margin-top: 50px;
	}
	.philosophy .cont02 .table_layout {
		overflow-x: auto;
	}
	.philosophy .cont02 table {
		min-width: 620px;
	}
	.philosophy .cont02 table th {
		font-size: 14px;
	}
	.philosophy .cont02 table tr:nth-of-type(1) th {
		height: 40px;
		width: 40px;
	}
	.philosophy .cont02 table tr:nth-of-type(2) th,
	.philosophy .cont02 table tr:nth-of-type(3) th {
		width: 40px;
	}
	.philosophy .cont02 table td {
		padding: 10px;
		width: calc((100% - 40px) / 5);
	}
	.philosophy .cont02 table tr:first-of-type th:nth-of-type(n + 2) {
		width: calc((100% - 40px) / 5);
	}

	/* cont03 */
	.philosophy .cont03 {
		margin: 70px auto 0;
		padding: 0 15px;
	}
	.philosophy .cont03 h2 {
		font-size: 24px;
		padding: 45px 0 30px;
		background: url(../img/page/philosophy_text03.png) no-repeat top center / 180px;
	}
	.philosophy .cont03 .text {
		font-size: 16px;
		margin-top: 40px;
		line-height: 1.8;
	}
	.philosophy .cont03 .ttl span {
		font-size: 19px;
		letter-spacing: -0.8px;
		padding: 10px 15px 10px;
	}
	.philosophy .cont03 ul {
		flex-direction: column;
		align-items: center;
	}
	.philosophy .cont03 ul li {
		width: 100%;
		max-width: 400px;
		min-height: 180px;
	}
	.philosophy .cont03 ul li:nth-of-type(2) {
		margin: 40px 0;
	}
	.philosophy .cont03 ul li::before {
		content: "";
		width: 60px;
		height: 60px;
		background: url(../img/page/hospitality_icon01.png) no-repeat center / 100%;
	}
	.philosophy .cont03 ul li:nth-of-type(2)::before {
		content: "";
		background: url(../img/page/hospitality_icon02.png) no-repeat center / 100%;
	}
	.philosophy .cont03 ul li:nth-of-type(3)::before {
		content: "";
		background: url(../img/page/hospitality_icon03.png) no-repeat center / 100%;
	}

	/* cont04 */
	.philosophy .cont04 {
		margin: 70px 0 70px;
		padding: 70px 0 90px;
	}
	.philosophy .cont04 .inner {
		padding: 0 15px;
	}
	.philosophy .cont04 h2 {
		font-size: 24px;
		padding: 40px 0 30px;
		background: url(../img/page/philosophy_text04.png) no-repeat top center / 150px;
	}
	.philosophy .cont04 .flex .text_box .ttl {
		font-size: 24px;
		padding: 12px 15px 9px;
	}
	.philosophy .cont04 .flex .text_box .text {
		font-size: 16px;
		margin: 35px 0 20px;
		line-height: 1.8;
	}
	.philosophy .cont04 .flex .text_box .text02 {
		font-size: 13px;
	}
	.philosophy .cont04 .box {
		margin-top: 50px;
		padding: 45px 15px 50px;
	}
	.philosophy .cont04 .box h3 {
		font-size: 20px;
	}
	.philosophy .cont04 .box .text03 {
		font-size: 14px;
	}
	.philosophy .cont04 .box .swiper {
		margin: 30px 40px 0;
	}
	.philosophy .cont04 .box .swiper-button-prev {
		width: 30px;
		height: 30px;
		left: 0;
	}
	.philosophy .cont04 .box .swiper-button-next {
		width: 30px;
		height: 30px;
		right: 0;
	}
	/* 経営理念 end
    ------------------------------------------------------------------------*/

	/* 拠点一覧
	----------------------------------------------------------- */

	/* key */
	.common.branch .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.branch .key .text::after {
		content: url(../img/page/branch_key_text.png);
		top: -66px;
		left: 50%;
		transform: translateX(-50%) scale(0.8);
	}

	/* cont01 */
	.branch .cont01 {
		margin: 50px auto 0;
		padding: 0 15px;
	}
	.branch .cont01 h2 {
		font-size: 20px;
	}
	.branch .cont01 h2:nth-of-type(n + 2) {
		margin-top: 50px;
	}
	.branch .cont01 table {
		font-size: 14px;
		width: calc(100% + 6px);
		border-spacing: 3px;
		margin-left: -3px;
	}
	.branch .cont01 table th {
		width: 25%;
		max-width: 170px;
		padding: 15px 13px 15px 15px;
	}
	.branch .cont01 table td {
		padding: 15px;
	}

	/* cont02 */
	.branch .cont02 {
		margin: 80px auto 100px;
		max-width: 1240px;
		box-sizing: border-box;
		padding: 0 20px;
	}
	.branch .cont02 .flex {
		box-sizing: border-box;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		width: 95%;
		margin: 0 auto;
	}
	.branch .cont02 .flex:nth-of-type(n + 2) {
		padding-top: 70px;
	}
	.branch .cont02 .flex iframe {
		flex-shrink: 0;
		width: 100%;
	}
	.branch .cont02 .flex .text_box {
		text-align: center;
		padding-left: 0;
	}
	.branch .cont02 .flex .text_box h2 {
		font-size: 26px;
		line-height: 1;
		position: relative;
		padding: 30px 0 50px;
	}
	.branch .cont02 .flex .text_box h2::before {
		content: "";
		width: 60px;
		height: 4px;
		background: linear-gradient(90deg, #93da01 20px, #c7d3d5 20px, #c7d3d5 100%);
		position: absolute;
		bottom: 20px;
		left: 50%;
		transform: translateX(-50%);
		z-index: -1;
	}
	.branch .cont02 .flex .text_box .text01 {
		font-size: 14px;
		line-height: 2;
	}
	.branch .cont02 .flex .text_box .text01 span {
		font-weight: bold;
		padding-right: 10px;
	}
	.branch .cont02 .flex .text_box .text01 span:nth-of-type(3) {
		padding-left: 20px;
	}
	.branch .cont02 .flex .text_box .text01 span.span-local {
		font-weight: normal;
		padding-right: 0;
	}
	.branch .cont02 .flex .text_box .text01 span.span-local br {
		display: block;
	}

	/* 拠点一覧 end
    ----------------------------------------------------------- */

	/* 会社紹介
    ----------------------------------------------------------- */

	/* key */
	.common.company .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.company .key .text::after {
		content: url(../img/page/company_key_text.png);
		top: -70px;
		left: 50%;
		transform: translateX(-50%) scale(0.8);
	}

	/* cont01 */
	.company .cont01 {
		margin: 90px auto 180px;
		max-width: 1240px;
		padding: 0 15px;
		box-sizing: border-box;
		position: relative;
	}
	.company .cont01::before {
		content: "";
		width: 200px;
		height: 300px;
		background: url(../img/page/company_bg01.png) no-repeat center / 100%;
		position: absolute;
		top: 5px;
		left: 15px;
		z-index: -1;
	}
	.company .cont01::after {
		content: "";
		width: 115px;
		height: 140px;
		background: url(../img/page/company_bg02.png) no-repeat center / 100%;
		position: absolute;
		top: -90px;
		right: 0;
		z-index: -1;
	}
	.company .cont01 ul {
		margin: 60px auto 0;
		max-width: 1200px;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.company .cont01 ul li {
		max-width: 360px;
		width: 48%;
	}
	.company .cont01 ul li:nth-of-type(n + 3) {
		margin-top: 25px;
	}
	.company .cont01 ul li a {
		font-size: clamp(12px, 1.3vw, 16px);
		line-height: 1.4;
	}

	/* cont02 */
	.company .cont02 {
		padding-bottom: 60px;
	}
	.company .cont02 .inner {
		margin: 0 auto;
	}
	.company .cont02 .box {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		width: 90%;
		background: #f4fbe5;
		padding: 28% 0 4%;
		margin: 0 auto;
		position: relative;
	}
	.company .cont02 .img {
		content: "";
		width: 85%;
		position: absolute;
		top: -35%;
		left: 50%;
		transform: translateX(-50%);
	}
	.company .cont02 .img img {
		width: 100%;
	}
	.company .cont02 .box h2 {
		font-size: 20px;
		font-weight: bold;
		padding-bottom: 17px;
		margin-bottom: 10px;
		position: relative;
	}
	.company .cont02 .box h2::before {
		content: "";
		width: 60px;
		height: 4px;
		background: linear-gradient(90deg, #93da01 20px, #c7d3d5 20px, #c7d3d5 100%);
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.company .cont02 .box .text {
		font-size: 14px;
		line-height: 2;
	}
	.company .cont02 .box .text span {
		font-weight: bold;
		padding-right: 10px;
	}
	.company .cont02 .box .text span:nth-of-type(2) {
		padding-left: 20px;
	}
	.company .cont02 .img_box {
		margin: 60px 0 0;
	}
	.company .cont02 .img_box img {
		width: 100vw;
	}
	.company .cont02 iframe {
		width: 100%;
		height: 400px;
		margin-top: 60px;
	}
	@media screen and (max-width: 450px) {
		/* cont01 */
		.company .cont01 {
			margin: 90px auto 150px;
		}
	}
	@media screen and (max-width: 375px) {
		/* cont01 */
		.company .cont01 {
			margin: 90px auto 150px;
		}
		.company .cont01 ul li {
			max-width: 360px;
			width: 95%;
			margin: 0 auto;
		}
		.company .cont01 ul li:nth-of-type(n + 2) {
			margin-top: 25px;
		}
		.company .cont01 ul li a {
			font-size: 16px;
			line-height: 1.4;
		}

		/* cont02 */
		.company .cont02 {
			padding-bottom: 40px;
		}
		.company .cont02 .inner {
			margin: 0 auto;
		}
		.company .cont02 .box {
			display: flex;
			justify-content: center;
			flex-wrap: wrap;
			width: 98%;
			background: #f4fbe5;
			padding: 28% 0 4%;
			margin: 0 auto;
			position: relative;
		}
		.company .cont02 .img {
			content: "";
			width: 85%;
			position: absolute;
			top: -35%;
			left: 50%;
			transform: translateX(-50%);
		}
		.company .cont02 .img img {
			width: 100%;
		}
		.company .cont02 .box h2 {
			font-size: 20px;
			font-weight: bold;
			padding-bottom: 17px;
			margin-bottom: 10px;
			position: relative;
		}
		.company .cont02 .box h2::before {
			content: "";
			width: 60px;
			height: 4px;
			background: linear-gradient(90deg, #93da01 20px, #c7d3d5 20px, #c7d3d5 100%);
			position: absolute;
			bottom: 0;
			left: 50%;
			transform: translateX(-50%);
		}
		.company .cont02 .box .text {
			font-size: 14px;
			line-height: 2;
		}
		.company .cont02 .box .text span {
			font-weight: bold;
			padding-right: 10px;
		}
		.company .cont02 .box .text span:nth-of-type(2) {
			padding-left: 20px;
		}
		.company .cont02 .img_box {
			margin: 60px 0 0;
		}
		.company .cont02 .img_box img {
			width: 100vw;
		}
		.company .cont02 iframe {
			width: 100%;
			height: 400px;
			margin-top: 60px;
		}
	}
	/* 会社紹介 end
    ----------------------------------------------------------- */

	/* サスティナビリティ
    ----------------------------------------------------------- */

	/* key */
	.common.sustainability .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.sustainability .key .text::after {
		content: url(../img/page/sustainability_key_text.png);
		top: -70px;
		left: 50%;
		transform: translateX(-50%) scale(0.8);
	}

	/* cont01 */
	.sustainability .cont01 {
		margin: 120px auto 0;
		max-width: 1240px;
		padding: 0 20px;
		box-sizing: border-box;
		position: relative;
	}
	.sustainability .cont01::before {
		content: "";
		width: 160px;
		height: 240px;
		background: url("../img/page/sustainability_bg01.png") no-repeat center / 100%;
		position: absolute;
		top: 50px;
		left: 0;
		z-index: -1;
	}
	.sustainability .cont01::after {
		content: "";
		width: 140px;
		height: 165px;
		background: url("../img/page/sustainability_bg02.png") no-repeat center / 100%;
		position: absolute;
		top: -100px;
		right: 0;
		z-index: -1;
	}
	.sustainability .cont01 .text {
		line-height: 2;
		text-align: center;
	}
	@media screen and (max-width: 600px) {
		.sustainability .cont01 {
			margin: 100px auto 0;
		}
	}

	/* cont02 */
	.sustainability .cont02 {
		margin: 92px auto 0;
		max-width: 1240px;
		padding: 0 20px;
		box-sizing: border-box;
		position: relative;
	}
	.sustainability .cont02 h2 {
		font-size: 30px;
		font-weight: bold;
		background: url("../img/page/sustainability_text01.png") no-repeat top center;
		line-height: 1;
		text-align: center;
		padding: 30px 0 42px;
		position: relative;
	}
	.sustainability .cont02 h2::after {
		content: "";
		width: 60px;
		height: 4px;
		background: linear-gradient(90deg, #93da01 20px, #c7d3d5 20px, #c7d3d5 100%);
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.sustainability .cont02 .text01 {
		font-size: 14px;
		line-height: 2;
		margin-top: 36px;
		text-align: center;
	}
	.sustainability .cont02 .box {
		display: flex;
		flex-wrap: wrap;
		align-content: center;
		min-height: 250px;
		background: #f4fbe5;
		padding: 4% 5% 4% 35%;
		box-sizing: border-box;
		margin-top: 40px;
		position: relative;
	}
	.sustainability .cont02 .box:nth-of-type(2n) {
		padding: 4% 35% 4% 5%;
	}
	.sustainability .cont02 .box:last-of-type {
		padding: 4% 5% 4% 35%;
	}
	.sustainability .cont02 .box h3 {
		color: #6f8488;
		font-size: 22px;
		position: relative;
	}
	.sustainability .cont02 .box h3::after {
		content: "";
		width: 120%;
		height: 1px;
		background: #93da01;
		position: absolute;
		bottom: -18px;
		left: -82px;
	}
	.sustainability .cont02 .box:nth-of-type(2n) h3::after {
		left: 0;
	}
	.sustainability .cont02 .box .text02 {
		font-size: 14px;
		line-height: 2;
		margin-top: 40px;
	}
	.sustainability .cont02 .box .img {
		position: absolute;
		top: 20px;
		left: 20px;
	}
	.sustainability .cont02 .box:nth-of-type(2n) .img {
		position: absolute;
		top: 20px;
		right: 20px;
		left: auto;
	}
	.sustainability .cont02 .box:nth-of-type(3) .img {
		position: absolute;
		top: 20px;
		left: 20px;
		transform: none;
	}
	.sustainability .cont02 .box .img img {
		max-width: 100%;
	}
	@media screen and (max-width: 600px) {
		.sustainability .cont02 .box {
			display: flex;
			flex-wrap: wrap;
			align-content: center;
			min-height: 250px;
			width: 85%;
			background: #f4fbe5;
			padding: 35% 5% 4%;
			box-sizing: border-box;
			margin: 150px auto 0;
			position: relative;
		}
		.sustainability .cont02 .box:nth-of-type(2n) {
			padding: 35% 5% 4%;
		}
		.sustainability .cont02 .box:last-of-type {
			padding: 35% 5% 4%;
		}
		.sustainability .cont02 .box h3 {
			color: #6f8488;
			font-size: 18px;
			text-align: center;
			position: relative;
		}
		.sustainability .cont02 .box h3::after {
			content: "";
			width: 100%;
			height: 1px;
			background: #93da01;
			position: absolute;
			bottom: -18px;
			left: 0;
		}
		.sustainability .cont02 .box .text02 {
			font-size: 14px;
			line-height: 2;
			margin-top: 40px;
		}
		.sustainability .cont02 .box .in_box {
			display: flex;
			justify-content: center;
			align-items: center;
			flex-wrap: wrap;
			padding: 4% 6%;
			width: 100%;
			background: #fff;
			margin-top: 20px;
		}
		.sustainability .cont02 .box .in_box h4 {
			width: 100%;
			font-size: 14px;
			text-align: center;
			padding-bottom: 16px;
			margin-bottom: 12px;
			background: url("../img/page/sustainability_text02.png") no-repeat bottom center;
		}
		.sustainability .cont02 .box .in_box:nth-of-type(2) h4 {
			background: url("../img/page/sustainability_text03.png") no-repeat bottom center;
		}
		.sustainability .cont02 .box .in_box .text03 {
			width: 100%;
			font-size: 12px;
			line-height: 1.8;
		}
		.sustainability .cont02 .box .img {
			position: absolute;
			top: -84px;
			left: 50%;
			transform: translateX(-50%);
			width: 55%;
		}
		.sustainability .cont02 .box:nth-of-type(2n) .img {
			position: absolute;
			top: -84px;
			left: 50%;
			transform: translateX(-50%);
		}
		.sustainability .cont02 .box:nth-of-type(3) .img {
			position: absolute;
			top: -84px;
			left: 50%;
			transform: translateX(-50%);
		}
		.sustainability .cont02 .box .img img {
			width: 100%;
		}
	}

	/* cont03 */
	.sustainability .cont03 {
		margin: 92px auto 0;
		max-width: 1240px;
		padding: 0 20px;
		box-sizing: border-box;
		position: relative;
	}
	.sustainability .cont03 .text01 {
		font-size: 14px;
		line-height: 2;
		margin-top: 36px;
		text-align: center;
	}
	.sustainability .cont03 .box {
		display: flex;
		flex-wrap: wrap;
		align-content: center;
		min-height: 250px;
		background: #f4fbe5;
		padding: 4% 5% 4% 35%;
		box-sizing: border-box;
		margin-top: 40px;
		position: relative;
	}
	.sustainability .cont03 .box:nth-of-type(2) {
		padding: 4% 40% 4% 5%;
	}
	.sustainability .cont03 .box h3 {
		width: 100%;
		color: #6f8488;
		font-size: 22px;
		position: relative;
	}
	.sustainability .cont03 .box h3::after {
		content: "";
		width: 120%;
		height: 1px;
		background: #93da01;
		position: absolute;
		bottom: -22px;
		left: -82px;
	}
	.sustainability .cont03 .box:nth-of-type(2) h3::after {
		left: 0;
		width: 150%;
	}
	.sustainability .cont03 .box:first-of-type h3 {
		font-size: 18px;
	}
	.sustainability .cont03 .box .text02 {
		font-size: 14px;
		line-height: 2;
		margin-top: 48px;
	}
	.sustainability .cont03 .box:nth-of-type(3) .text02 {
		background: url("../img/page/sustainability_img09.png") no-repeat bottom left;
		padding-bottom: 150px;
	}
	.sustainability .cont03 .box .img {
		position: absolute;
		top: 20px;
		left: 20px;
	}
	.sustainability .cont03 .box .img img {
		width: 100%;
	}
	.sustainability .cont03 .box:nth-of-type(2) .img {
		position: absolute;
		top: 20px;
		right: 20px;
		left: auto;
	}
	@media screen and (max-width: 600px) {
		.sustainability .cont03 .box {
			display: flex;
			flex-wrap: wrap;
			align-content: center;
			min-height: 250px;
			width: 85%;
			background: #f4fbe5;
			padding: 35% 5% 4%;
			box-sizing: border-box;
			margin: 150px auto 0;
			position: relative;
		}
		.sustainability .cont03 .box:nth-of-type(2) {
			padding: 35% 5% 4%;
		}
		.sustainability .cont03 .box h3 {
			color: #6f8488;
			font-size: 18px;
			text-align: center;
			position: relative;
		}
		.sustainability .cont03 .box:nth-of-type(3) h3 {
			font-size: 17px;
		}
		.sustainability .cont03 .box h3::after {
			content: "";
			width: 100%;
			height: 1px;
			background: #93da01;
			position: absolute;
			bottom: -18px;
			left: 0;
		}
		.sustainability .cont03 .box:nth-of-type(2) h3::after {
			left: 0;
			width: 100%;
		}
		.sustainability .cont03 .box .text02 {
			font-size: 14px;
			line-height: 2;
			margin-top: 40px;
		}
		.sustainability .cont03 .box .img {
			position: absolute;
			top: -84px;
			left: 50%;
			transform: translateX(-50%);
			width: 55%;
		}
		.sustainability .cont03 .box .img img {
			width: 100%;
		}
		.sustainability .cont03 .box:nth-of-type(2) .img {
			position: absolute;
			top: -84px;
			left: 50%;
			transform: translateX(-50%);
			width: 80%;
		}
	}

	/* cont04 */
	.sustainability .cont04 {
		margin: 100px auto;
		max-width: 1240px;
		padding: 0 20px;
		box-sizing: border-box;
		position: relative;
	}
	.sustainability .cont04 h2 {
		font-size: 30px;
		font-weight: bold;
		background: url("../img/page/sustainability_text05.png") no-repeat top center;
		line-height: 1;
		text-align: center;
		padding: 30px 0 42px;
		position: relative;
	}
	.sustainability .cont04 h2::after {
		content: "";
		width: 60px;
		height: 4px;
		background: linear-gradient(90deg, #93da01 20px, #c7d3d5 20px, #c7d3d5 100%);
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.sustainability .cont04 .text01 {
		font-size: 14px;
		line-height: 2;
		margin-top: 36px;
		text-align: center;
	}
	.sustainability .cont04 .box {
		display: flex;
		flex-wrap: wrap;
		align-content: center;
		min-height: 380px;
		padding: 4% 50% 4% 0;
		box-sizing: border-box;
		margin-top: 50px;
		position: relative;
	}
	.sustainability .cont04 .box::after {
		content: "";
		width: 100vw;
		height: 100%;
		background: #f4fbe5;
		position: absolute;
		bottom: 0;
		right: 100px;
		z-index: -1;
	}
	.sustainability .cont04 .box:nth-of-type(2n)::after {
		content: "";
		width: 100vw;
		height: 100%;
		background: #f4fbe5;
		position: absolute;
		bottom: 0;
		right: auto;
		left: 100px;
		z-index: -1;
	}
	.sustainability .cont04 .box:nth-of-type(2n) {
		padding: 4% 0 4% 50%;
	}
	.sustainability .cont04 .box h3 {
		width: 100%;
		color: #6f8488;
		font-size: 22px;
		position: relative;
	}
	.sustainability .cont04 .box h3::after {
		content: "";
		width: 120%;
		height: 1px;
		background: #93da01;
		position: absolute;
		bottom: -18px;
		left: 0;
	}
	.sustainability .cont04 .box:nth-of-type(2) h3::after {
		left: -50px;
	}
	.sustainability .cont04 .box .text02 {
		line-height: 2;
		margin-top: 38px;
	}
	.sustainability .cont04 .box ul {
		max-width: 590px;
		background: #fff;
		padding: 3% 2.5% 3% 5%;
		margin-top: 20px;
	}
	.sustainability .cont04 .box ul li {
		font-size: 14px;
		line-height: 1.86;
		text-indent: -7px;
	}
	.sustainability .cont04 .box ul li br {
		display: none;
	}
	.sustainability .cont04 .box ul li::before {
		content: "-";
	}
	.sustainability .cont04 .box .img {
		position: absolute;
		top: 20px;
		right: 0;
		transform: none;
		width: 45.8%;
	}
	.sustainability .cont04 .box:nth-of-type(2n) .img {
		right: auto;
		left: 0;
	}
	.sustainability .cont04 .box .img img {
		width: 100%;
	}
	@media screen and (max-width: 600px) {
		.sustainability .cont04 .box {
			display: flex;
			flex-wrap: wrap;
			align-content: center;
			min-height: 280px;
			padding: 38% 4% 5%;
			box-sizing: border-box;
			margin-top: 180px;
			position: relative;
		}
		.sustainability .cont04 .box::after {
			content: "";
			width: 100%;
			height: 100%;
			background: #f4fbe5;
			position: absolute;
			bottom: 0;
			right: 0;
			z-index: -1;
		}
		.sustainability .cont04 .box:nth-of-type(2n)::after {
			content: "";
			width: 100%;
			height: 100%;
			background: #f4fbe5;
			position: absolute;
			bottom: 0;
			right: auto;
			left: 0;
			z-index: -1;
		}
		.sustainability .cont04 .box:nth-of-type(2n) {
			padding: 40% 4% 5%;
		}
		.sustainability .cont04 .box:nth-of-type(3) {
			padding: 43% 4% 5%;
		}
		.sustainability .cont04 .box h3 {
			width: 100%;
			color: #6f8488;
			font-size: 20px;
			text-align: center;
			position: relative;
		}
		.sustainability .cont04 .box h3::after {
			content: "";
			width: 100%;
			height: 1px;
			background: #93da01;
			position: absolute;
			bottom: -18px;
			left: 0;
		}
		.sustainability .cont04 .box:nth-of-type(2) h3::after {
			left: 0;
		}
		.sustainability .cont04 .box .text02 {
			font-size: 14px;
			line-height: 2;
			margin-top: 38px;
		}
		.sustainability .cont03 .box:nth-of-type(3) .text02 {
			background: url("../img/page/sustainability_img09.png") no-repeat bottom center;
			background-size: 80%;
			padding-bottom: 35%;
		}
		.sustainability .cont04 .box ul {
			max-width: 590px;
			background: #fff;
			padding: 3% 2.5% 3% 5%;
			margin-top: 20px;
		}
		.sustainability .cont04 .box ul li {
			font-size: 14px;
			line-height: 1.86;
			text-indent: -7px;
		}
		.sustainability .cont04 .box ul li::before {
			content: "-";
		}
		.sustainability .cont04 .box .img {
			position: absolute;
			top: -20%;
			left: 50%;
			right: auto;
			transform: translateX(-50%);
			width: 80%;
		}
		.sustainability .cont04 .box:nth-of-type(2n) .img {
			right: auto;
			left: 50%;
		}
		.sustainability .cont04 .box .img img {
			width: 100%;
		}
	}

	/* サスティナビリティ end
    ----------------------------------------------------------- */

	/* 団体保険制度のご案内
    ----------------------------------------------------------- */

	/* key */
	.common.group_insurance .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.group_insurance .key .text::after {
		content: url(../img/page/group_insurance_key_text.png);
		top: -55px;
		left: 50%;
		transform: translateX(-50%) scale(0.85);
	}

	/* cont01 */
	.group_insurance .cont01 {
		margin: 30px auto 50px;
	}

	/* 団体保険制度のご案内 end
    ----------------------------------------------------------- */

	/* 集団自動車保険のご案内
    ----------------------------------------------------------- */

	/* key */
	.common.motor_insurance .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.motor_insurance .key .text::after {
		content: url(../img/page/motor_insurance_key_text.png);
		top: -55px;
		left: 50%;
		transform: translateX(-50%) scale(0.85);
	}

	/* 集団自動車保険のご案内 end
    ----------------------------------------------------------- */

	/* 20231208 add */
	.hospitality .cont02 ul li:before {
		top: -10px;
		transform: translateX(-50%) scale(0.8);
	}

	.hospitality .cont03 .flex .text:before {
		content: "取組 ①";
		width: auto;
		height: auto;
		background: linear-gradient(to right, #49b117, #93da01) !important;
		top: -5px;
		padding: 5px 20px;
		transform: translateX(-50%) scale(0.8);
		width: 120px;
	}

	.hospitality .cont03 .flex .text:nth-of-type(2):before {
		content: "取組 ②";
	}
	.hospitality .cont03 .flex .text:nth-of-type(3):before {
		content: "取組 ③";
	}
	.hospitality .cont03 .flex .text:nth-of-type(4):before {
		content: "取組 ④";
	}
	.hospitality .cont03 .flex .text:nth-of-type(5):before {
		content: "取組 ⑤";
	}
	.hospitality .cont03 .flex .text:nth-of-type(6):before {
		content: "取組 ⑥";
	}

	.hospitality .cont04 .flex .text:before {
		content: "評価 ①";
		width: auto;
		height: auto;
		background: linear-gradient(to right, #49b117, #93da01) !important;
		top: -5px;
		padding: 5px 20px;
		transform: translateX(-50%) scale(0.8);
	}

	.hospitality .cont04 .flex .text:nth-of-type(2):before {
		content: "評価 ②";
	}
	.hospitality .cont04 .flex .text:nth-of-type(3):before {
		content: "評価 ③";
	}
}

/* ------------------------------------------------------------------------*/

/* MDRT会員とは
    ------------------------------------------------------------------------*/

@media screen and (max-width: 750px) {
	/* key */
	.common.mdrt .key .text {
		padding: 0;
		padding-top: 20px;
	}
	.common.mdrt .key .text::after {
		content: url(../img/page/mdrt_key_text.png);
		top: -67px;
		left: 50%;
		transform: translateX(-50%) scale(0.85);
	}

	/* cont01 */
	.solicitation .cont01 {
		margin: 50px auto 70px;
		padding: 0 15px;
	}
	.solicitation .cont01 .box {
		margin-top: 30px;
	}
	.solicitation .cont01 .box h3 {
		font-size: 18px;
	}
	.solicitation .cont01 .box .item_box:nth-of-type(n + 2) {
		margin-top: 35px;
	}
	.solicitation .cont01 .box h3::before {
		background: linear-gradient(90deg, #93da01 95px, #c7d3d5 95px, #c7d3d5 100%);
	}
}
/* MDRT会員とは end
    ------------------------------------------------------------------------*/
