@charset "utf-8";

/* ======================================================
 * index.css
 * ------------------------------------------------------
 * - Common
 * - PC
 * - SP
 * - Clearfix
 * Print
====================================================== */

/* ======================================================
 * Common
====================================================== */
img {
	width: auto;
	max-width: 100%;
	height: auto;
}

/* ======================================================
 * PC
====================================================== */
@media print, screen and (min-width: 768px) {
	/* ----- qs-index-main ----- */
	.qs-index-main {
		margin: 28px 0 0;
	}
	.qs-index-main .main__inner {
		width: 700px;
		margin: 0 auto;
		transition: opacity .25s cubic-bezier(.4,0,.2,1) 0s;
	}
	.qs-index-main .main__hero {
	}
	/* ----- qs-index-main is-active ----- */
	.qs-index-main.is-active {
	}
	.qs-index-main.is-active .main__inner {
		opacity: 0;
	}
	.qs-index-main.is-active .main__hero {
		width: 100%;
	}
	
	/* ----- qs-index-anchor ----- */
	.qs-index-anchor-wrap {
	}
	.qs-index-anchor {
		position: fixed;
		left: 0;
		bottom: 0;
		padding: 12px 0;
		width: 100%;
		background-color: #fff;
		box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
		z-index: 41;
	}
	.qs-index-anchor .anchor__image {
		display: none;
	}
	.qs-index-anchor .anchor__list {
		display: -webkit-flex;
		display: flex;
		margin: 0 auto;
		width: 1000px;
	}
	.qs-index-anchor .anchor__list > .anchor__item {
		position: relative;
		padding-right: 11px;
		width: 140px;
		margin-right: 10px;
	}
	.qs-index-anchor .anchor__list > .anchor__item:last-child {
		margin-right: 0;
		width: 250px;
	}
	.qs-index-anchor .anchor__list > .anchor__item a::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 13px 0 13px 11px;
		border-color: transparent transparent transparent #fdf2d2;
		transition: opacity 0.4s;
		opacity: 0;
	}
	.qs-index-anchor .anchor__list > .anchor__item a:hover::after,
	.qs-index-anchor .anchor__list > .anchor__item.is-active a::after {
		opacity: 1;
	}
	.qs-index-anchor .anchor__list > .anchor__item > a {
		display: block;
		padding: 2px 0 2px 6px;
		color: #333333;
		text-align: center;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: bold;
	}
	.qs-index-anchor .anchor__list > .anchor__item > a:hover,
	.qs-index-anchor .anchor__list > .anchor__item.is-active > a {
		background-color: #fdf2d2;
	}
	.qs-index-anchor .anchor__list > .anchor__item > a:hover {
		background-color: #fdf2d2;
		box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.1);
	}
	
	/* ----- qs-index-section ----- */
	.qs-index-section {
		position: relative;
		margin-top: 30px;
		padding: 80px 0 75px;
	}
	.qs-index-section + .qs-index-section {
		margin-top: 0;
	}
	.qs-index-section .section__main {
		position: fixed;
		bottom: calc(50% - 10px);
		left: calc(50% - 500px);
		width: 440px;
		height: 505px;
		margin: 0;
		padding: 45px 32px 20px;
		background: rgba(255,255,255,.9);
		opacity: 0;
		transform: translateY(50%);
		z-index: 40;
		pointer-events: none;
	}
	.qs-index-section:first-of-type .section__main {
		transition: opacity .25s cubic-bezier(.4,0,.2,1) 0s;
	}
	.qs-index-section .section__main.is-active {
		opacity: 1;
		pointer-events: auto;
	}
	.qs-index-section .section__main.is-fixed {
		position: absolute;
		bottom: 0;
		left: 0!important;
		transform: translateY(0);
	}
	.qs-index-section .section__main__inner {
		position: relative;
		min-height: 100%;
		padding-bottom: 280px;
		opacity: 0;
		transition: opacity .25s cubic-bezier(.4,0,.2,1) 0s;
	}
	.qs-index-section .section__main.is-active .section__main__inner {
		opacity: 1;
	}
	.qs-index-section .section__main__title {
		font-family: "TBUDゴシック B", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-size: 2.6rem;
		font-weight: bold;
	}
	.qs-index-section .section__main__title + * {
		margin-top: 10px!important;
	}
	.qs-index-section .section__main__lead {
		margin-top: 30px;
	}
	.qs-index-section .section__main__image {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 376px;
	}
	.qs-index-section .section__main__image > img {
		width: 320px;
	}
	.qs-index-section .section__inner {
		width: 500px;
		margin: 0 0 0 auto;
		padding: 45px 0 0 32px;
	}
	.qs-index-section .section__title {
		font-family: "TBUDゴシック B", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-size: 2.6rem;
		font-weight: bold;
	}
	.qs-index-section .section__title + * {
		margin-top: 10px!important;
	}
	.qs-index-section .section__text {
		margin-top: 30px;
	}
	.qs-index-section .section__item {
		margin-top: 75px;
	}
	.qs-index-section .section__item__title {
		position: relative;
		display: -webkit-flex;
		display: flex;
		justify-content: flex-end;
		padding-right: 42px;
		font-family: "TBUDゴシック B", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-style: italic;
		color: #aaa;
		text-align: right;
		line-height: 1.2;
		z-index: 2;
	}
	.qs-index-section .section__item__title .title__label {
		display: inline-block;
	}
	.qs-index-section .section__item__title::after{
		content: "";
		display: block;
		position: absolute;
		bottom: -24px;
		right: 18px;
		width: 3px;
		height: calc(100% + 24px);
	}
	.qs-index-section .section__item__title.type-01 .title__label {
		width: 215px;
	}
	.qs-index-section .section__item__title.type-01::after {
		height: calc(100% + 28px);
		background: #ffa1b0;
	}
	.qs-index-section .section__item__title.type-02 .title__label {
		width: 424px;
	}
	.qs-index-section .section__item__title.type-02::after {
		background: #a4c6ff;
	}
	.qs-index-section .section__item__image {
		position: relative;
		width: 100vw;
		min-width: 1040px;
		height: 450px;
		margin-top: -1px;
		margin-left: calc(-50vw - 32px);
		background: no-repeat center center / cover;
		background-attachment: fixed;
		z-index: 1;
	}
	body[data-browser="safari"] .qs-index-section .section__item__image {
		background-attachment: inherit;
	}
	.qs-index-section #anc-01_01 .section__item__image {
		background-image: url("../jpg/index_bg01-3.jpg");
	}
	body[data-browser="safari"] .qs-index-section #anc-01_01 .section__item__image {
		background-position-y: 42%;
	}
	.qs-index-section #anc-02_03 .section__item__image {
		background-image: url("../jpg/index_bg02.jpg");
	}
	body[data-browser="safari"] .qs-index-section #anc-02_03 .section__item__image {
		background-position-y: 0;
	}
	.qs-index-section #anc-03_01 .section__item__image {
		background-image: url("../jpg/index_bg04.jpg");
	}
	.qs-index-section #anc-03_02 .section__item__image {
		background-image: url("../jpg/index_bg05.jpg");
	}
	body[data-browser="safari"] .qs-index-section #anc-03_02 .section__item__image {
		background-position-y: 45%;
	}
	.qs-index-section #anc-03_03 .section__item__image {
		background-image: url("../jpg/index_bg03-2.jpg");
	}
	.qs-index-section #anc-03_04 .section__item__image {
		background-image: url("../jpg/index_bg06.jpg");
	}
	.qs-index-section #anc-03_05 .section__item__image {
		background-image: url("../jpg/index_bg07.jpg");
	}
	.qs-index-section #anc-04_01 .section__item__image {
		background-image: url("../jpg/index_bg08.jpg");
	}
	body[data-browser="safari"] .qs-index-section #anc-04_01 .section__item__image {
		background-position-y: 80%;
	}
	.qs-index-section #anc-04_02 .section__item__image {
		background-image: url("../jpg/index_bg09.jpg");
	}
	.qs-index-section #anc-05_01 .section__item__image {
		background-image: url("../jpg/index_bg10.jpg");
	}
	body[data-browser="safari"] .qs-index-section #anc-05_01 .section__item__image {
		background-position-y: 70%;
	}
	.qs-index-section #anc-05_02 .section__item__image {
		background-image: url("../jpg/index_bg11.jpg");
	}
	.qs-index-section #anc-06_02 .section__item__image {
		background-image: url("../jpg/index_bg12.jpg");
	}
	body[data-browser="safari"] .qs-index-section #anc-06_02 .section__item__image {
		background-position-y: 30%;
	}
	.qs-index-section .section__item__image::before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 51px;
		background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(255,255,255,0) 100%);
	}
	
	.diagnosticBox .checkboxList {
		padding-left: 0;
	}
	.checkbox {
		padding: 0px 0 0 25px;
	}
	.checkbox:before {
		left: 5px;
		margin-top: -10px;
		width: 6px;
		height: 12px;
	}
	.checkbox:after {
		width: 15px;
		height: 15px;
	}
	.checkboxList.is-flex1 li {
		margin-left: 0;
	}
	 input[disabled] + .checkbox {
		color: #333;
	}
	
	/* ------------------------------------------------------
	 * Clearfix
	------------------------------------------------------ */
	.clearfix::after {
		display: block;
		clear: both;
		content: "";
	}
}
/* ======================================================
 * Media Queries
====================================================== */
@media screen and (min-width: 768px) and (max-width: 1040px) {
	.qs-index-section .section__main {
		left: 20px;
	}
	.qs-index-section .section__item__image {
		margin-left: calc(-520px - 32px);
	}
}


/* ======================================================
 * SP
====================================================== */
@media only screen and (max-width: 767px){
	/* ----- qs-index-main ----- */
	.qs-index-main {
		margin: 30px 0 0;
		padding-bottom: 44px;
	}
	.qs-index-main .main__inner {
		width: 100%;
		margin: 0 auto;
	}
	
	/* ----- qs-index-anchor ----- */
	#container {
		padding-bottom: 75px!important;
	}
	.qs-index-anchor {
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		background: #fff;
		box-shadow: 0px -4px 6px 0px rgba(0, 0, 0, 0.1);
		opacity: 0;
		pointer-events: none;
		z-index: 9;
		transition: opacity .25s cubic-bezier(.4,0,.2,1) 0s;
	}
	.qs-index-anchor.is-show {
		opacity: 1;
		pointer-events: auto;
	}
	.qs-index-anchor .anchor__list {
		width: 100%;
		margin-bottom: 0;
		padding: 12.5px 30px;
		overflow: hidden;
	}
	.qs-index-anchor .anchor__list:not(.slick-initialized) .anchor__item + .anchor__item {
		display: none!important;
		opacity: 0!important;
	}
	.qs-index-anchor .anchor__link {
		display: block;
		text-decoration: none!important;
	}
	.qs-index-anchor .anchor__inner {
		display: flex;
	}
	.qs-index-anchor .anchor__image {
		width: 50px;
		margin-right: 24px;
	}
	.qs-index-anchor .anchor__name {
		padding: 7px 0 14px;
		color: #333;
		font-size: 1.3rem;
		font-weight: bold;
		text-decoration: none!important;
	}
	.qs-index-anchor .slick-arrow {
		position: absolute;
		top: 50%;
		z-index: 2;
		width: 30px;
		height: 30px;
		padding: 0;
		border: none;
		background-color: transparent;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		outline: none;
	}
	.qs-index-anchor .slick-arrow::before {
		content: "";
		display: block;
		position: absolute!important;
		top: 50%;
		width: 11px;
		height: 11px;
		margin: -9px 0 0 0;
		border: solid #999;
		border-width: 2px 2px 0 0;
		background: none;
	}
	.qs-index-anchor .slick-arrow.slick-prev {
		left: 0px;
	}
	.qs-index-anchor .slick-arrow.slick-prev::before {
		left: calc(50% - 3px);
		transform: rotate(-135deg);
	}
	.qs-index-anchor .slick-arrow.slick-next {
		right: 0px;
	}
	.qs-index-anchor .slick-arrow.slick-next::before {
		right: calc(50% - 3px);
		transform: rotate(45deg);
	}
	.qs-index-anchor .anchor__control {
		position: absolute;
		bottom: 13px;
		left: 50%;
		z-index: 2;
		transform: translateX(-50%);
	}
	.qs-index-anchor .anchor__pager .slick-dots {
		position: relative;
		display: flex;
		bottom: 0;
	}
	.qs-index-anchor .anchor__pager .slick-dots > li {
		width: 10px;
		height: 10px;
		margin: 0 6px;
	}
	.qs-index-anchor .anchor__pager .slick-dots > li button {
		width: 10px;
		height: 10px;
		margin: 0;
		padding: 0;
		border-radius: 50%;
		border: 1px solid #fff;
		background: #ddd;
		box-shadow: 0 0 5px 0 rgba(0,0,0,.3);
	}
	.qs-index-anchor .anchor__pager .slick-dots > li.slick-active button {
		background: #71babf;
	}
	.qs-index-anchor .anchor__pager .slick-dots > li button::before {
		display: none;
	}
	
	/* ----- qs-index-section ----- */
	.qs-index-section {
		position: relative;
		padding: 28px 0 38px;
	}
	.qs-index-section .section__main {
	}
	.qs-index-section .section__main__inner {
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.qs-index-section .section__main__title {
		order: 1;
		font-family: "TBUDゴシック B", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-size: 2rem;
		font-weight: bold;
	}
	.qs-index-section .section__main__lead {
		order: 3;
		width: 100%;
		margin-top: 15px;
	}
	.qs-index-section .section__main__image {
		order: 2;
		margin-top: 14px;
		width: 212px;
	}
	.qs-index-section .section__inner {
	}
	.qs-index-section .section__title {
		display: none;
	}
	.qs-index-section .section__text {
		margin-top: 1em;
	}
	.qs-index-section .section__item {
		margin-top: 25px;
	}
	.qs-index-section .section__item__title {
		position: relative;
		display: -webkit-flex;
		display: flex;
		justify-content: flex-end;
		padding-right: 29px;
		font-family: "TBUDゴシック B", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Arial, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-style: italic;
		color: #aaa;
		text-align: right;
		line-height: 1.2;
		z-index: 2;
	}
	.qs-index-section .section__item__title .title__label {
		display: inline-block;
	}
	.qs-index-section .section__item__title::after{
		content: "";
		display: block;
		position: absolute;
		bottom: -14px;
		right: 15px;
		width: 2px;
		height: calc(100% + 14px);
	}
	.qs-index-section .section__item__title.type-01 .title__label {
		width: 129px;
	}
	.qs-index-section .section__item__title.type-01::after {
		height: calc(100% + 18px);
		background: #ffa1b0;
	}
	.qs-index-section .section__item__title.type-02 .title__label {
		width: 250px;
	}
	.qs-index-section .section__item__title.type-02::after {
		background: #a4c6ff;
	}
	.qs-index-section .section__item__image {
		position: relative;
		width: 100%;
		height: 163px;
		margin-top: -1px;
		background: no-repeat center center / cover;
		z-index: 1;
	}
	.qs-index-section #anc-01_01 .section__item__image {
		background-image: url("../jpg/index_bg01-r2x.jpg");
	}
	.qs-index-section #anc-02_03 .section__item__image {
	background-image: url("../jpg/index_bg02-r2x.jpg");
	}
	.qs-index-section #anc-03_01 .section__item__image {
		background-image: url("../jpg/index_bg04-r2x.jpg");
	}
	.qs-index-section #anc-03_02 .section__item__image {
		background-image: url("../jpg/index_bg05-r2x.jpg");
	}
	.qs-index-section #anc-03_03 .section__item__image {
	background-image: url("../jpg/index_bg03-r2x.jpg");
	}
	.qs-index-section #anc-03_04 .section__item__image {
	background-image: url("../jpg/index_bg06-r2x.jpg");
	}
	.qs-index-section #anc-03_05 .section__item__image {
	background-image: url("../jpg/index_bg07-r2x.jpg");
	}
	.qs-index-section #anc-04_01 .section__item__image {
		background-image: url("../jpg/index_bg08-r2x.jpg");
	}
	.qs-index-section #anc-04_02 .section__item__image {
		background-image: url("../jpg/index_bg09-r2x.jpg");
	}
	.qs-index-section #anc-05_01 .section__item__image {
		background-image: url("../jpg/index_bg10-r2x.jpg");
	}
	.qs-index-section #anc-05_02 .section__item__image {
		background-image: url("../jpg/index_bg11-r2x.jpg");
	}
	.qs-index-section #anc-06_02 .section__item__image {
		background-image: url("../jpg/index_bg12-r2x.jpg");
	}
	.qs-index-section .section__item__image::before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 26px;
		background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(255,255,255,0) 100%);
	}

	.checkbox {
		padding: 0px 0 0 25px;
	}
	.checkbox:before {
		left: 5px;
		margin-top: 0;
		width: 6px;
		height: 12px;
	}
	.checkbox:after {
		width: 15px;
		height: 15px;
	}
	 input[disabled] + .checkbox {
		color: #333;
	}

	
	/* ----- Clearfix ----- */
	.clearfix::after {
		display: block;
		clear: both;
		content: "";
	}
}

/* ======================================================
 * Print
====================================================== */
@media print {
  .qs-index-main.is-active .main__inner {
    opacity: 1!important;
  }
  .qs-index-section .section__main {
    position: absolute!important;
    top: 0!important;
    bottom: auto!important;
    opacity: 1!important;
  }
  .qs-index-section .section__main .section__main__inner {
    opacity: 1!important;
  }
  .qs-index-section .section__item__image {
    background-attachment: inherit!important;
  }
}