@charset "utf-8";


/* title
----------------------------------------------- */

.title {
	color: #5d4b31;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	text-align: justify;
}
.title--h1 {
	font-size: 48px;
	line-height: 77px;
	letter-spacing: 0.2em;
}
.title--h2 {
	font-size: 24px;
	line-height: 58px;
}
.title--h3 {
	font-size: 30px;
	line-height: 52px;
}
.title--h4 {
	font-size: 24px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 39px;
}
.title--h5,
.title--h6 {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 29px;
}


/* textline
----------------------------------------------- */

.textline {
	font-size: 15px;
	text-align: justify;
	line-height: 30px;
}
.textline span {
	font-size: 30px;
}

/* read */

.textline--read {
	line-height: 35px;
}


/* textlink
----------------------------------------------- */

.textlink {
	text-decoration: none;
	padding: 0 0 0.3em;
	/*background: linear-gradient(#807a71, #807a71) 0 100%/100% 1px no-repeat;*/
}


/* notes
----------------------------------------------- */

.notes {
	display: block;
	padding: 0 0 0 13px;
	color: #6d675e;
	font-size: 13px;
	font-weight: 300;
	text-indent: -13px;
	letter-spacing: 0.04em;
	line-height: 26px;
}

/* double */

.notes--double {
	display: flex;
	padding: 0;
	text-indent: 0;
}
.notes--double span:first-child {
	width: 28px;
}
.notes--double span:last-child {
	width: calc(100% - 28px);
}

/* word */

.notes--word {
	display: flex;
	padding: 0;
	text-indent: 0;
}
.notes--word span:first-child {
	flex-shrink: 0;
}


/* lists
----------------------------------------------- */

.lists {
	display: block;
	padding: 0 0 0 15px;
	font-size: 15px;
	text-align: justify;
	text-indent: -15px;
	line-height: 30px;
}
.lists strong {
	font-weight: 700;
}

/* read */

.lists--read {
	line-height: 35px;
}


/* boxarrow
----------------------------------------------- */

.boxarrow:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	margin: -9px 0 0;
	width: 18px;
	height: 18px;
	background-image: url(../img/common/anchor_arrow_right.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 10px;
	background-color: #463c2d;
	z-index: 1;
}

/* reverse */

.boxarrow--reverse:after {
	right: auto;
	left: 0;
	background-image: url(../img/common/anchor_arrow_left.svg);
}

/* blank */

.boxarrow--blank:after {
	background-image: url(../img/common/anchor_blank.svg);
	background-size: 14px;
	background-color: transparent;
}

/* plus */

.boxarrow--plus:after {
	background-image: url(../img/common/anchor_plus.svg);
	background-size: 18px;
}

/* small */

.boxarrow--small:after {
	margin: -5px 0 0;
	width: 12px;
	height: 12px;
	background-size: 6px;
}


/* button
----------------------------------------------- */

.button {
	display: block;
	position: relative;
	width: 100%;
	color: #594d3b;
	text-align: left;
	text-decoration: none;
	outline: none;
	border: none;
	border-radius: 0;
	background-color: transparent;
	cursor: pointer;
	z-index: 1;
	-webkit-appearance: none;
}
.button:before,
.button:after {
	display: block;
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 3px;
	background-color: #c19f73;
	z-index: 1;
}
.button:after {
	background-color: #715d3f;
	transform: scaleX(0);
	transform-origin: right;
}
.button__label {
	display: block;
	position: relative;
	height: 70px;
	font-family: 'Noto Serif JP', serif;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 69px;
	z-index: 1;
}

/* center */

.button--center .button__label {
	text-align: center;
}

/* reverse */

.button--reverse .button__label {
	padding: 0 0 0 18px;
	text-align: center;
}


/* panelbutton
----------------------------------------------- */

.panelbutton {
	display: block;
	position: relative;
	padding: 40px 0 30px;
	color: #473c2d;
	text-decoration: none;
	z-index: 1;
}
.panelbutton:before,
.panelbutton:after {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #f3e7d9;
	z-index: -1;
}
.panelbutton:after {
	background-color: #e3d9c7;
	transform: scaleX(0);
	transform-origin: right;
}
.panelbutton__label {
	display: block;
	margin: 0 50px;
	font-family: 'Noto Serif JP', serif;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.04em;
}
.panelbutton__caption {
	display: block;
	margin: 10px 50px 0;
	font-size: 15px;
	line-height: 30px;
}

/* small */

.panelbutton--small {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0;
	height: 98px;
}
.panelbutton--small .panelbutton__label {
	margin: 0 0 0 40px;
	font-size: 18px;
}

/* boxarrow */

.panelbutton__label.boxarrow:after {
	top: auto;
	left: 0;
	bottom: 0;
	margin: 0;
}


/* flatbutton
----------------------------------------------- */

.flatbutton {
	display: block;
	position: relative;
	height: 72px;
	color: #fff;
	text-decoration: none;
	background-color: #695e4e;
	z-index: 1;
}
.flatbutton__label {
	display: block;
	font-family: 'Noto Serif JP', serif;
	font-size: 18px;
	text-align: center;
	letter-spacing: 0.02em;
	line-height: 71px;
}

/* boxarrow */

.flatbutton.boxarrow:after {
	top: auto;
	right: 0;
	bottom: 0;
	margin: 0;
}


/* more
----------------------------------------------- */

.more {
	display: inline-block;
	position: relative;
	/*padding: 0 17px 0 0;*/
	color: #fff;
	font-family: 'Noto Serif JP', serif;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	z-index: 1;   
	background-color: #6b5945;
    padding: 10px 20px 10px 15px;
}
.more[target="_blank"]:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	margin: -6px 0 0;
	width: 13px;
	height: 13px;
	background-image: url(../img/common/anchor_blank.svg);
	background-repeat: no-repeat;
	background-size: 13px;
	z-index: 1;
}


/* tag
----------------------------------------------- */

.tag {
	display: inline-block;
	margin: 1px 0;
	width: 90px;
	height: 16px;
	color: #fff;
	font-size: 10px;
	text-align: center;
	line-height: 14px;
	border: 1px solid #000;
	background-color: #000;
	box-sizing: border-box;
}

/* status */

.tag--clinic {
	border-color: #a8a299;
	background-color: #a8a299;
}
.tag--seminar {
	border-color: #c4ab85;
	background-color: #c4ab85;
}
.tag--start {
	border-color: #8e7b60;
	border-radius: 16px;
	background-color: #8e7b60;
}
.tag--end {
	color: #8e7b60;
	border-color: #8e7b60;
	border-radius: 16px;
	background-color: #fff;
}


/* cover
----------------------------------------------- */

.cover {
	position: relative;
	overflow: hidden;
	z-index: 2;
}
.cover__image {
	font-size: 0;
}
.cover__image img {
	width: 100%;
	height: auto;
}
.cover__header {
	position: absolute;
	right: 0;
	bottom: 0;
	padding: 55px 0 0;
	background-color: #fff;
	z-index: 1;
}
.cover__title {
	margin: 0 125px 0 105px;
	color: #715d3f;
	font-family: 'Noto Serif JP', serif;
	font-size: 48px;
	font-weight: 500;
	letter-spacing: 0.2em;
	line-height: 1;
}

/* ready */

.js-indicate-ready.cover__title {
	transform: translateX(100%);
	overflow: hidden;
}
.js-indicate-ready.cover__title span {
	display: block;
	transform: translateX(-100%);
}

/* start */

.js-indicate-start.cover__title,
.js-indicate-start.cover__title span {
	transform: translateX(0);
	transition-property: transform;
	transition-duration: 1.25s;
	transition-delay: 0.5s;
	transition-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
}


/* pagetitle
----------------------------------------------- */

.pagetitle {
	background-color: #f6f6f6;
}
.pagetitle__outer {
	position: relative;
	margin: 0 45px;
	z-index: 1;
}
.pagetitle__inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	margin: auto;
	padding: 40px 0;
	max-width: 860px;
	height: 310px;
	color: #594d3b;
	z-index: 2;
}
.pagetitle__date {
	font-family: 'EB Garamond', serif;
	font-size: 15px;
	font-weight: 500;
}
.pagetitle__title {
	margin: 15px 0 0;
	font-family: 'Noto Serif JP', serif;
	font-size: 40px;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 64px;
}
.pagetitle__status {
	display: flex;
	align-items: center;
	margin: 30px 0 0;
}
.pagetitle__code {
	margin: 0 10px 0 0;
	font-size: 12px;
}
.pagetitle__label {
	position: absolute;
	top: 0;
	left: -150px;
	opacity: 0.15;
	z-index: 1;
}

/* tag */

.pagetitle__status .tag {
	margin: 0 10px 0 0;
}
.pagetitle__status .tag--start,
.pagetitle__status .tag--end {
	order: 3;
}


/* imagecolum
----------------------------------------------- */

.imagecolum {
	display: flex;
	justify-content: space-between;
	margin: 48px 0 0;
	padding: 48px 0 0;
}
.imagecolum__column {
	width: calc(50% - 32px);
}
.imagecolum__image {
}
.imagecolum__image img {
	width: 100%;
	height: auto;
}

/* reverse */

.imagecolum--reverse .imagecolum__column:first-child {
	order: 2;
}

/* wide */

.imagecolum--wide {
	margin: 88px 0 0;
}
.imagecolum--wide .imagecolum__image {
	margin: 0 0 0 -140px;
}
.imagecolum--wide.imagecolum--reverse .imagecolum__image {
	margin: 0 -140px 0 0;
}

/* textline */

.imagecolum .title {
	margin: -10px 0 0;
}

/* textline */

.imagecolum .textline {
	margin: 21px 0 0;
}


/* newsindex
----------------------------------------------- */

.newsindex {
}
.newsindex__lists {
	padding: 45px 0 0;
}
.newsindex__list {
	padding: 28px 0;
	font-size: 0;
	border-top: 1px dotted #d2d2d2;
}
.newsindex__list:first-child {
	border-top: 0;
}
.newsindex__info {
	display: inline-block;
	width: 215px;
	vertical-align: top;
}
.newsindex__link {
	display: inline-block;
	width: calc(100% - 215px);
	vertical-align: top;
	overflow: hidden;
}
.newsindex__link a {
	display: inline-block;
	font-size: 15px;
	letter-spacing: 0.1em;
	text-decoration: none;
	white-space: nowrap;
}
.newsindex__date {
	display: inline-block;
	width: 88px;
	color: #594d3b;
	font-family: 'EB Garamond', serif;
	font-size: 16px;
	font-weight: 500;
	vertical-align: top;
	letter-spacing: -0.05em;
}
.newsindex__label {
	display: inline-block;
	width: 90px;
	vertical-align: top;
}
.newsindex__message {
	padding: 60px 0;
	font-size: 15px;
	text-align: center;
}

/* wide */

.newsindex--wide {
	border-bottom: 1px solid #e7e6e2;
}
.newsindex--wide .newsindex__info {
	width: 255px;
}
.newsindex--wide .newsindex__link {
	width: calc(100% - 255px);
}
.newsindex--wide .newsindex__date {
	width: 100px;
}


/* banner
----------------------------------------------- */

.banner {
	position: relative;
	margin: 136px 0 0;
	z-index: 2;
}
.banner a {
	display: block;
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.banner__image {
}
.banner__image img {
	width: 100%;
	height: auto;
}
.banner__columns {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	color: #fff;
	z-index: 2;
}
.banner__column:first-child {
	width: 45%;
}
.banner__column:last-child {
	width: 48.5%;
}
.banner__title {
	font-family: 'Noto Serif JP', serif;
	font-size: 36px;
	font-weight: 600;
	text-align: center;
	letter-spacing: 0.02em;
}
.banner__copy {
	padding: 13px 15px 0;
	font-size: 15px;
	line-height: 30px;
}
.banner__label {
	position: absolute;
	left: 50px;
	bottom: -3px;
	opacity: 0.16;
	z-index: 1;
}

/* boxarrow */

.banner .boxarrow:after {
	top: auto;
	right: 0;
	bottom: 0;
	margin: 0;
}


/* call
----------------------------------------------- */

.call {
	position: relative;
	margin: 136px 0 0;
	z-index: 2;
}
.call__inner {
	display: block;
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.call__image {
}
.call__image img {
	width: 100%;
	height: auto;
}
.call__columns {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: absolute;
	top: 0;
	left: 8.62%;
	right: 8.62%;
	bottom: 0;
	color: #fff;
	z-index: 2;
}
.call__column:first-child {
	margin: 0 64px 0 0;
	width: calc(100% - 444px);
}
.call__column:last-child {
	width: 380px;
}
.call__title {
	font-family: 'Noto Serif JP', serif;
	font-size: 30px;
	font-weight: 600;
}
.call__telno {
	font-family: 'EB Garamond', serif;
	font-size: 59px;
}
.call__telno small {
	display: inline-block;
	margin: -10px 10px 0 0;
	font-size: 15px;
	vertical-align: middle;
}
.call__telguide {
	margin: 10px 0 0;
	font-size: 13px;
	line-height: 23px;
}


/* summary
----------------------------------------------- */

.summary {
	position: relative;
	z-index: 1;
}
.summary__title {
	color: #5d4b30;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
}
.summary__title--h1 {
	position: relative;
	margin: 250px 0 0;
	font-size: 46px;
	letter-spacing: 0.08em;
	line-height: 64px;
	z-index: 1;
}
.summary__title--h1:after {
	display: block;
	content: "";
	position: absolute;
	top: 13px;
	left: 0;
	right: 0;
	height: 1px;
	background-color: #cdae85;
	z-index: -1;
}
.summary__title--h1 span {
	display: inline-block;
	padding: 0 20px 0 0;
	background-color: #fff;
}
.summary__list,
.summary__textline {
	margin: -15px 0 0;
	padding: 36px 0 0;
}
.summary__list--nomargin {
	margin: 0;
	padding: 0;
}
.summary__textline--margin {
	padding: 142px 0 0;
}
.summary__listscolumn {
	display: flex;
	margin: 0 0 0 30px;
	padding: 0;
}
.summary__listscolumn > span:first-child {
	margin: 0 -15px 0 0;
	padding: 0;
	width: 15px;
}
.summary__listscolumn > span:last-child {
	width: calc(100% - 15px);
}
.summary__more {
	display: none;
}
.summary__egg {
	position: absolute;
	top: 100px;
	right: 0;
	opacity: 0.1;
	z-index: -1;
}
.summary__egg img {
	width: auto;
	height: 640px;
}

.summary__columns {
	display: flex;
	justify-content: space-between;
}
.summary__columns .summary__column:first-child {
	width: 50%;
}
.summary__columns .summary__column:last-child {
	width: 45%;
}

.summary__table {
}
.summary__table table {
	width: 100%;
}
.summary__table th,
.summary__table td {
	font-size: 15px;
	font-weight: 400;
	text-align: left;
	vertical-align: top;
	line-height: 30px;
}
.summary__table th {
	width: 1%;
	white-space: nowrap;
}
.summary__table td {
	width: 99%;
}

/* title */

.summary .title--h2 {
	margin: -20px 0 0;
	padding: 136px 0 0;
}
.summary .title--h3 {
	margin: -25px 0 0;
	padding: 80px 0 0;
	padding: 100px 0 0;
}
.summary .title--h4 {
	margin: -20px 0 0;
	padding: 56px 0 0;
}
.summary .title--h4 sup {
	top: -0.3em;
}
.summary__column .title--h4 {
	margin: -20px 0 0;
	padding: 36px 0 21px;
}
.summary__column + .summary__column .title--h4 {
	padding: 69px 0 21px;
}

/* ready */

.js-indicate-ready.summary__egg {
	opacity: 0;
	transform: rotate(0.09deg) scale(0.9);
}

/* start */

.js-indicate-start.summary__egg {
	opacity: 0.1;
	transform: rotate(0deg) scale(1);
	transition-property: opacity, transform;
	transition-duration: 1s;
	transition-timing-function: cubic-bezier(0.65, 0, 0.35, 1);
}


/* pc
----------------------------------------------- */

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


	/* textlink
	----------------------------------------------- */

	.textlink {
		transition-property: opacity;
		transition-duration: 0.25s;
	}

	/* hover */

	.textlink:hover {
		opacity: 0.6;
	}


	/* boxarrow
	----------------------------------------------- */

	.boxarrow:after {
		transition-property: background-position;
		transition-duration: 0.35s;
	}

	/* hover */

	.boxarrow:hover:after,
	a:hover .boxarrow:after {
		background-position: right 30% center;
	}
	.boxarrow--blank:hover:after {
		background-position: center center;
	}

	.boxarrow--reverse:hover:after,
	a:hover .boxarrow--reverse:after {
		background-position: left 30% center;
	}


	/* button
	----------------------------------------------- */

	.button:after,
	.button__label {
		transition-property: transform, letter-spacing;
		transition-duration: 0.65s;
	}

	/* hover */

	.button:hover:after {
		transform: scaleX(1);
		transform-origin: left;
	}
	.button:hover .button__label {
		letter-spacing: 0.3em;
	}


	/* panelbutton
	----------------------------------------------- */

	.panelbutton:after,
	.panelbutton__label {
		transition-property: transform, letter-spacing;
		transition-duration: 0.65s;
	}

	/* hover */

	.panelbutton:hover:after {
		transform: scaleX(1);
		transform-origin: left;
	}
	.panelbutton:hover .panelbutton__label {
		letter-spacing: 0.3em;
	}


	/* flatbutton
	----------------------------------------------- */

	.flatbutton {
		transition-property: opacity;
		transition-duration: 0.25s;
	}

	/* hover */

	.flatbutton:hover {
		opacity: 0.6;
	}


	/* more
	----------------------------------------------- */

	.more {
		transition-property: opacity;
		transition-duration: 0.25s;
	}

	/* hover */
	
	.more:hover {
		opacity: 0.6;
	}


	/* newsindex
	----------------------------------------------- */

	.newsindex__link a {
		transition-property: opacity;
		transition-duration: 0.25s;
	}

	/* hover */

	.newsindex__link a:hover {
		opacity: 0.7;
	}


	/* banner
	----------------------------------------------- */

	.banner__image {
		transition-property: transform;
		transition-duration: 0.65s;
	}

	/* hover */

	.banner a:hover .banner__image {
		transform: rotate(0.09deg) scale(1.06);
	}



	/* retina
	----------------------------------------------- */
	
	@media only screen and (-webkit-min-device-pixel-ratio: 2) { 
	}


}


/* mobile
----------------------------------------------- */

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


	/* title
	----------------------------------------------- */

	.title--h1 {
		font-size: 36px;
		line-height: 58px;
		letter-spacing: 0.14em;
	}
	.title--h2 {
		font-size: 28px;
		font-weight: 600;
		line-height: 45px;
	}
	.title--h3 {
		font-size: 24px;
		font-weight: 600;
		line-height: 39px;
	}
	.title--h4 {
		font-size: 20px;
		font-weight: 600;
		letter-spacing: 0.04em;
		line-height: 32px;
	}
	.title--h5,
	.title--h6 {
		font-size: 16px;
		font-weight: 600;
		letter-spacing: 0.04em;
		line-height: 26px;
	}


	/* text
	----------------------------------------------- */

	/* read */
	
	.textline--read {
		line-height: 30px;
	}


	/* lists
	----------------------------------------------- */

	/* read */

	.lists--read {
		line-height: 30px;
	}


	/* button
	----------------------------------------------- */

	.button:before,
	.button:after {
		height: 2px;
	}
	.button__label {
		height: 68px;
		font-size: 16px;
		line-height: 67px;
	}


	/* panelbutton
	----------------------------------------------- */

	.panelbutton {
		padding: 30px 0 20px;
	}
	.panelbutton__label {
		margin: 0 20px;
		font-size: 20px;
	}
	.panelbutton__caption {
		margin: 10px 20px 0;
	}

	/* small */

	.panelbutton--small {
		padding: 0;
		height: 74px;
	}
	.panelbutton--small .panelbutton__label {
		margin: 0 0 0 25px;
		font-size: 16px;
	}


	/* flatbutton
	----------------------------------------------- */

	.flatbutton {
		height: 62px;
	}
	.flatbutton__label {
		font-size: 16px;
		line-height: 61px;
	}


	/* more
	----------------------------------------------- */

	.more {
		    padding: 5px 10px;
		font-size: 13px;
	}


	/* cover
	----------------------------------------------- */

	.cover__header {
		padding: 15px 0 0;
	}
	.cover__title {
		margin: 0 20px 0 25px;
		font-size: 36px;
		letter-spacing: 0.14em;
	}


	/* pagetitle
	----------------------------------------------- */

	.pagetitle__outer {
		margin: 0 30px;
	}
	.pagetitle__inner {
		display: block;
		padding: 43px 0 40px;
		max-width: initial;
		height: auto;
	}
	.pagetitle__date {
		font-size: 16px;
	}
	.pagetitle__title {
		margin: 15px 0 0;
		font-size: 28px;
		letter-spacing: 0;
		line-height: 45px;
	}
	.pagetitle__status {
		display: block;
		margin: 15px 0 0;
	}
	.pagetitle__code {
		display: block;
		margin: 10px 0 0;
	}
	.pagetitle__label {
		top: auto;
		left: -35px;
		bottom: 0;
	}
	.pagetitle__label img {
		width: auto;
		height: 105px;
	}

	/* tag */
	
	.pagetitle__status .tag {
		margin: 0;
	}


	/* imagecolum
	----------------------------------------------- */

	.imagecolum {
		display: block;
		margin: 32px 0 0;
		padding: 32px 0 0;
	}
	.imagecolum__column {
		width: auto;
	}
	.imagecolum__image {
		margin: 0 -15px;
	}

	/* wide */

	.imagecolum--wide {
		margin: 16px 0 0;
	}
	.imagecolum--wide .imagecolum__image,
	.imagecolum--wide.imagecolum--reverse .imagecolum__image {
		margin: 0 -15px;
	}

	/* textline */

	.imagecolum .title {
		margin: 18px 0 0;
	}

	/* textline */

	.imagecolum .textline {
		margin: 13px 0 0;
	}


	/* newsindex
	----------------------------------------------- */

	.newsindex__lists {
		margin: -7px 0 0;
		padding: 0;
	}
	.newsindex__list {
		padding: 23px 0 28px;
	}
	.newsindex__info {
		display: block;
		margin: 0 -10px 0 0;
		width: auto;
	}
	.newsindex__link {
		display: block;
		margin: 8px 0 0;
		width: auto;
	}
	.newsindex__link a {
		font-size: 15px;
		text-align: justify;
		white-space: normal;
		line-height: 26px;
	}
	.newsindex__date {
		margin: 5px 0 0;
		width: 88px;
	}
	.newsindex__label {
		width: auto;
	}

	/* tag */

	.newsindex__label .tag {
		margin: 5px 10px 0 0;
	}

	/* wide */

	.newsindex--wide .newsindex__info {
		width: auto;
	}
	.newsindex--wide .newsindex__link {
		width: auto;
	}
	.newsindex--wide .newsindex__date {
		width: 88px;
	}


	/* banner
	----------------------------------------------- */

	.banner {
		margin: 72px -15px 0;
	}
	.banner__columns {
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
		margin: 0 30px;
	}
	.banner__column:first-child,
	.banner__column:last-child {
		width: auto;
	}
	.banner__title {
		padding: 12px 0 0;
		font-size: 20px;
		text-align: left;
		letter-spacing: 0;
	}
	.banner__copy {
		padding: 12px 0 0;
		font-size: 12px;
		line-height: 20px;
	}
	.banner__label {
		left: -5px;
		bottom: -2px;
	}
	.banner__label img {
		width: auto;
		height: 67px;
	}


	/* call
	----------------------------------------------- */
	
	.call {
		margin: 67px -15px 0;
	}
	.call__columns {
		flex-direction: column;
		justify-content: center;
		align-items: center;
		left: 0;
		right: 0;
	}
	.call__column:first-child,
	.call__column:last-child {
		margin: 0;
		width: auto;
	}
	.call__title {
		width: 250px;
		font-size: 20px;
	}
	.call__telno {
		margin: 17px 0 0;
		width: 250px;
		font-size: 41px;
		letter-spacing: -0.02em;
		white-space: nowrap;
	}
	.call__telno a {
		color: #fff;
		text-decoration: none;
		border-bottom: 1px solid #fff;
	}
	.call__telno small {
		margin: -9px 0 0;
	}
	.call__telguide {
		margin: 15px 0 0;
		width: 250px;
		line-height: 20px;
	}


	/* summary
	----------------------------------------------- */

	.summary__title {
		font-weight: 500;
	}
	.summary__title--h1 {
		margin: 111px 0 0;
		font-size: 33px;
		font-weight: 600;
		letter-spacing: -0.05em;
		line-height: 57px;
	}
	.summary__title--h1:after {
		top: 0;
		height: 2px;
	}
	.summary__title--h1 span {
		padding: 35px 0 0;
		background-color: transparent;
	}
	.summary__list,
	.summary__textline {
		margin: -15px 0 0;
		padding: 28px 0 0;
	}
	.summary__list--nomargin {
		margin: 0;
		padding: 0;
	}
	.summary__textline--margin {
		margin: -18px 0 0;
		padding: 48px 0 0;
	}
	.summary__body {
		max-height: 90px;
		overflow: hidden;
	}
	.summary__more {
		display: block;
		margin: 15px 0 0;
	}

	.summary__columns {
		display: block;
	}
	.summary__columns .summary__column:first-child,
	.summary__columns .summary__column:last-child {
		width: auto;
	}

	/* title */

	.summary .title--h2 {
		margin: -20px 0 0;
		padding: 48px 0 12px;
	}
	.summary .title--h3 {
		margin: -15px 0 0;
		padding: 36px 0 0;
		padding: 76px 0 0;
	}
	.summary .title--h4 {
		margin: -10px 0 0;
		padding: 28px 0 0;
	}
	.summary__column .title--h4 {
		padding-bottom: 13px;
	}
	.summary__column + .summary__column .title--h4 {
		padding: 28px 0 13px;
	}


}

