@charset "UTF-8";

/* =Reset
-------------------------------------------------------------- */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;word-wrap:break-word;overflow-wrap:break-word;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:inherit;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:super;}
sub{vertical-align:text-bottom;}
input,textarea,select,button{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select,button{font-size:100%;}
legend{color:#000;}
img {vertical-align:top;}
input[type="radio"],input[type="checkbox"] {vertical-align: -2px;}
label {cursor: pointer;}


/* =Common
-------------------------------------------------------------- */
body {
	text-align: center;
	line-height: 1;
	-webkit-text-size-adjust: 100%;
}
img {
	max-width: 100%;
	height: auto;
}
input[type="submit"], input[type="reset"] {
	appearance: none;
	cursor: pointer;
}

/* clearfix */
.cf:before, .cf:after {content:"";display:table;}
.cf:after {clear:both;}
.clr {clear: both;}


/* =Styles 
-------------------------------------------------------------- */
body {
	font-family: 'Noto Sans JP', YuGothic, -apple-system, BlinkMacSystemFont, 'Yu Gothic Medium', 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;

	color: #000;
}
.gothic {
	font-family: 'Hiragino Kaku Gothic ProN', 'Yu Gothic', sans-serif;
}
a {
	text-decoration: none;
	color: #484848;
}
@media ( min-width: 601px ){
	.sp {
		display: none !important;
	}
}
@media ( min-width: 961px ){
	body {
		font-size: 14px;
	}
	.sptab {
		display: none !important;
	}
	.inner {
		max-width: 1000px;
		margin: 0 auto;
		padding: 0 20px;
	}
}
@media ( max-width: 960px ){
	body {
		font-size: 3.2vw;
	}
	.pc {
		display: none !important;
	}
	.inner {
		padding: 0 4vw;
	}
}
@media ( max-width: 600px ){
	.pctab {
		display: none !important;
	}
	.inner {
		padding: 0 4vw;
	}
}

:root {
	--bule: #2e339b;
	--red: #c32b65;
}


/* =header 
-------------------------------------------------------------- */
.header {
	background: #40409a;
}
.header .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header .tel .num {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
@media ( min-width: 961px ){
	.header {
		padding: 13px 0 14px;
	}
	.header .tel .num {
		position: relative;
		color: #fff;
		font-size: 31px;
		font-weight: 500;
		padding-left: 44px;
		margin: 0 0 8px;
	}
	.header .tel .num::before {
		content: '';
		position: absolute;
		top: 56%;
		left: 0;
		transform: translateY(-50%);
		width: 36px;
		height: 24px;
		background: url(img/icon_tel.png) no-repeat center/contain;
	}
	.header .tel .time {
		color: #fff;
		font-size: 11px;
	}
}
@media ( max-width: 960px ){
	.header {
		padding: 2.667vw 0 2.4vw;
	}
	.header .logo {
		width: 52.933vw;
	}
}

/* =mv
-------------------------------------------------------------- */
.mv {
	position: relative;
}
.mv .box {
	position: relative;
	border-style: solid;
	border-color: var(--bule);
}
.mv .box::after {
	content: '';
	position: absolute;
	background: url(img/mv_box_img.png) no-repeat center/contain;;
}
.mv .box .in {
	background: #fff;
}
.mv .box p {
	color: var(--bule);
	font-weight: bold;
	font-feature-settings: 'palt';
}
.mv .box p span {
	color: var(--red);
}
@media ( min-width: 961px ){
	.mv {
		height: 618px;
		padding: 44px 0 0;
		background: url(img/mv_pc.png) no-repeat #f5f9ff bottom center/cover;
		box-sizing: border-box;
	}
	.mv .catch {
		padding: 0 3%;
		margin: 0 0 8px;
	}
	.mv .catch img {
		width: 100%;
		aspect-ratio: 946 / 166;
	}
	.mv .box {
		width: 495px;
		padding: 6px;
		border-width: 2px;
		box-sizing: border-box;
		margin: 0 2.5% 101px auto;
	}
	.mv .box::after {
		right: -11px;
		bottom: -2px;
		width: 96px;
		height: 138px;
	}
	.mv .box p {
		font-size: 30px;
		line-height: 1.26;
		margin: 0 75px 0 0;
		padding: 20px 0 16px;
	}
}
@media ( max-width: 960px ){
	.mv {
		height: 108.133vw;
		padding: 8.4vw 0 0;
		background: url(img/mv_sp.png) no-repeat #f5f9ff bottom center/cover;
		box-sizing: border-box;
	}
	.mv .catch {
		width: 79.067vw;
		margin: 0 0 32.133vw;
	}
	.mv .box {
		width: 85.3%;
		padding: 1.067vw;
		border-width: 0.267vw;
		box-sizing: border-box;
		margin: 0 auto 2.933vw;
		background: rgba(255, 255, 255, 0.4);
	}
	.mv .box::after {
		right: -2vw;
		bottom: -0.267vw;
		width: 15.6vw;
		height: 22.533vw;
	}
	.mv .box p {
		font-size: 4.933vw;
		line-height: 1.243;
		padding: 3.2vw 7.867vw 2.667vw 0;
	}
}

/* = nav_box
-------------------------------------------------------------- */
.nav_box {
	position: absolute;
	left: 0;
	right: 0;
	width: 100%;
	max-width: 765px;
	margin-left: auto;
	margin-right: auto;
	background: #fff;
	z-index: 1;
}
.nav_box > .text {
	font-weight: bold;
	line-height: 1.428;
}
.nav_box ul {
	display: flex;
	justify-content: space-between;
}
.nav_box ul li a {
	position: relative;
	display: flex;
	flex-direction: column;
	height: 100%;
	box-sizing: border-box;
}
.nav_box ul li a::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	background: url(img/nav_arrow.png)no-repeat center/contain;
}
.nav_box ul li a .text {
	color: #2551a1;
	font-weight: 900;
}
@media ( min-width: 961px ){
	.nav_box {
		top: 447px;
		padding: 30px 0 15px;
		border-radius: 15px;
		box-shadow: 0px 0px 25px 0px rgba(5, 31, 74, 0.25);
	}
	.nav_box > .text {
		font-size: 23px;
		margin: 0 0 28px;
	}
	.nav_box ul {
		padding: 0 6.1% 0 9.2%;
	}
	.nav_box ul li a {
		padding: 0 0 30px;
	}
	.nav_box ul li:nth-child(1) a .icon {
		padding: 7px 0 25px;
	}
	.nav_box ul li:nth-child(2) a .icon {
		padding: 4px 0 21px;
	}
	.nav_box ul li:nth-child(3) a .icon {
		padding: 0 0 17px;
	}
	.nav_box ul li a::after {
		width: 16px;
		height: 10px;
	}
	.nav_box ul li a .text {
		font-size: 20px;
		line-height: 1.25;
	}
}
@media ( max-width: 960px ){
	.nav_box {
		top: 101.733vw;
		width: 93%;
		padding: 4.667vw 0 3.867vw;
		margin: 0 auto;
		border-radius: 2vw;
		box-shadow: 0px 0px 3.333vw 0px rgba(5, 31, 74, 0.25);
	}
	.nav_box > .text {
		font-size: 3.733vw;
		line-height: 1.428;
		margin: 0 0 2vw;
	}
	.nav_box ul {
		padding: 0 5.467vw 0 4vw;
	}
	.nav_box ul li a {
		padding: 0 0 5.333vw;
	}
	.nav_box ul li a .icon {
		margin: 0 auto;
	}
	.nav_box ul li:nth-child(1) a .icon {
		width: 21.867vw;
		padding: 3.067vw 0 4.533vw;
	}
	.nav_box ul li:nth-child(2) a .icon {
		width: 21.733vw;
		padding: 0 0 5.2vw;
	}
	.nav_box ul li:nth-child(3) a .icon {
		width: 18.4vw;
		padding: 0.933vw 0 1.6vw;
	}
	.nav_box ul li a::after {
		width: 3.733vw;
		height: 2.267vw;
	}
	.nav_box ul li a .text {
		font-size: 3.467vw;
		line-height: 1.34;
	}
}

/* = worry
-------------------------------------------------------------- */
.worry {
	background: #e8f0ff;
}
.worry .ttl {
	font-weight: bold;
	background-color: #f5f9ff;
}
.worry .list_wrap {
	position: relative;
	background-color: #f5f9ff;
	z-index: 1;
}
.worry .list_wrap ul {
	position: relative;
	text-align: left;
	max-width: 880px;
	margin: 0 auto;
}
.worry .list_wrap ul li {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	color: #051f4a;
	font-weight: bold;
	font-feature-settings: 'palt';
}
.worry .list_wrap ul li::before {
	content: '';
	position: absolute;
	left: 0;
	background: url(img/worry_check.png) no-repeat center/ contain;
}
.worry .list_wrap ul li .color {
	color: var(--red);
}
.worry .list_wrap ul li .small {
	display: inline-block;
	color: var(--bule);
	background-color: #fff;
}
.worry .text_wrap {
	position: relative;
	font-weight: bold;
	background: #e8f0ff;
}
.worry .text_wrap::before {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}
.worry .text_wrap .inner {
	position: relative;
}
.worry .text_wrap .inner::before {
	content: '';
	position: absolute;
	bottom: 0;
	background: url(img/worry_img.png)no-repeat bottom center/contain;
}
.worry .text_wrap .inner::after {
	content: '';
	position: absolute;
	background: url(img/icon_worry.png) no-repeat center/contain;
	z-index: 1;
}
.worry .text_wrap .strong {
	color: #ad884f;
}
.worry .text_wrap .text span {
	color: var(--red);
}
@media ( min-width: 961px ){
	.worry .ttl {
		font-size: 38px;
		padding: 190px 0 27px;
	}
	.worry .ttl span {
		font-size: 59px;
	}
	.worry .list_wrap {
		clip-path: polygon(100% 0, 100% calc(100% - 11.9412vw), 50% 100%, 0 calc(100% - 11.9412vw), 0 0);
	}
	.worry .text_wrap::before {
		max-width: 1000px;
		height: 282px;
		top: -240px;
		background: url(img/worry_bg.png) no-repeat center/contain;
	}
	.worry .list_wrap ul {
		padding: 0 0 137px;
	}
	.worry .list_wrap ul li {
		font-size: 27px;
		padding: 17px 0 18px 40px;
		gap: 10px;
		border-bottom: 1px dotted #d1d1d1;
	}
	.worry .list_wrap ul li:last-child {
		border-bottom: none;
	}
	.worry .list_wrap ul li::before {
		top: 0.48em;
		width: 30px;
		height: 30px;
	}
	.worry .list_wrap ul li .small {
		font-size: 18px;
		line-height: 1.22;
		padding: 5px 8px;
		border: 1px solid var(--bule);
		border-radius: 5px;
	}
	.worry .text_wrap .inner {
		padding: 42px 0 40px;
	}
	.worry .text_wrap .inner::before {
		left: 27px;
		width: 208px;
		height: 276px;
	}
	.worry .text_wrap .inner::after {
		right: 95px;
		top: -177px;
		width: 178px;
		height: 159px;
	}
	.worry .text_wrap .strong {
		font-size: 36px;
		line-height: 1.25;
		margin: 0 0 16px;
	}
	.worry .text_wrap .text {
		font-size: 25px;
		line-height: 1.2;
	}
}
@media ( max-width: 960px ){
	.worry .ttl {
		font-size: 5.733vw;
		padding: 63.733vw 0 4vw;
	}
	.worry .ttl span {
		font-size: 8.933vw;
	}
	.worry .list_wrap {
		padding: 0 4vw;
		clip-path: polygon(100% 0, 100% calc(100% - 12vw), 50% 100%, 0 calc(100% - 12vw), 0 0);
	}
	.worry .list_wrap ul {
		padding: 0 0 16.267vw;
	}
	.worry .list_wrap ul li {
		font-size: 4vw;
		line-height: 1.333;
		padding: 2.133vw 0 2.133vw 6.667vw;
		gap: 1.867vw;
		border-bottom: 0.133vw dotted #d1d1d1;
	}
	.worry .list_wrap ul li:last-child {
		border-bottom: none;
	}
	.worry .list_wrap ul li::before {
		top: 2.8vw;
		width: 3.6vw;
		height: 3.6vw;
	}
	.worry .list_wrap ul li .small {
		font-size: 2.8vw;
		padding: 0.8vw 1.6vw;
		border: 0.133vw solid var(--bule);
		border-radius: 1.333vw;
	}
	.worry .text_wrap::before {
		height: 37.6vw;
		top: -28vw;
		background: url(img/worry_bg.png) no-repeat center/contain;
	}
	.worry .text_wrap .inner {
		padding: 7.733vw 0 4.933vw 15.333vw;
	}
	.worry .text_wrap .inner::before {
		left: 0.667vw;
		width: 27.6vw;
		height: 37.2vw;
	}
	.worry .text_wrap .inner::after {
		right: 4vw;
		top: -25.867vw;
		width: 27.333vw;
		height: 24.4vw;
	}
	.worry .text_wrap .strong {
		font-size: 5.333vw;
		line-height: 1.25;
		margin: 0 0 2.133vw;
	}
	.worry .text_wrap .text {
		font-size: 3.733vw;
		line-height: 1.21;
	}
}


/* = #sec11
-------------------------------------------------------------- */
#sec11{
	background: #d4d6f5;
	background-size: 100% auto;
}
#sec11 .tit{
	color: var(--bule);
	font-weight: bold;
}
#sec11 .voice .txt_box span {
	display: block;
	text-align: left;
}
/* modal */
.modal-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color:rgba(0,0,0,0.70);
	z-index: 9998;
	cursor: pointer;
}
#sec11 .voice_slider {
	box-sizing: border-box;
	overflow: hidden;
}
#sec11 .voice_slider .swiper {
	max-width: 1000px;
	box-sizing: border-box;
	overflow: visible;
}
#sec11 .voice_slider .swiper .slide_prev,
#sec11 .voice_slider .swiper .slide_next {
	position: absolute;
	cursor: pointer;
	z-index: 1;
}
#sec11 .voice_slider .swiper .slide_prev {
	left: 0;
	transform: rotate(180deg);
	background: url(img/slider_active.png) no-repeat 0 0 / contain;
	background-size: 98%;
}
#sec11 .voice_slider .swiper .slide_next {
	right: 0;
	background: url(img/slider_active.png) no-repeat 0 0 / contain;
	background-size: 98%;
}
#sec11 .voice_slider .swiper .slide_next.swiper-button-disabled,
#sec11 .voice_slider .swiper .slide_prev.swiper-button-disabled {
	cursor: default;
}
#sec11 .voice_slider .swiper .slide_prev.swiper-button-disabled {
	transform: rotate(0deg);
	background: url(img/slider_disabled.png) no-repeat 0 0 / contain;
	background-size: 98%;
}
#sec11 .voice_slider .swiper .slide_next.swiper-button-disabled {
	transform: rotate(180deg);
	background: url(img/slider_disabled.png) no-repeat 0 0 / contain;
	background-size: 98%;
}
#sec11 .voice_slider .item {
	position: relative;
	background: #fff;
	box-sizing: border-box;
	transition: transform .2s;
}
#sec11 .voice_slider .item > .in {
	position: relative;
	z-index: 1;
}
#sec11 .voice_slider .item::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	box-sizing: border-box;
	z-index: 0;
}
#sec11 .voice_slider .item::before {
	mix-blend-mode: multiply;
}
#sec11 .voice_slider .item .title {
	color: #fff;
	background: #40409a;
}
#sec11 .voice_slider .item .data {
	display: flex;
}
#sec11 .voice_slider .item .data .img {
	background: #fff;
	border: 1px #ccc solid;
	box-sizing: border-box;
}
#sec11 .voice_slider .item .data .img img {
	width: 100%;
}
#sec11 .voice_slider .item .data .img[data-pop] {
	position: relative;
	cursor: pointer;
}
#sec11 .voice_slider .item .data .img[data-pop]::after {
	content: '';
	position: absolute;
	background: url(img/icon_loupe.png) no-repeat 0 0 / contain;
}
#sec11 .voice_pop {
	position: fixed;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.7);
	opacity: 0;
	visibility: hidden;
	transition: opacity .3s, visibility .3s;
	z-index: 9998;
}
#sec11 .voice_pop.show {
	opacity: 1;
	visibility: visible;
}
#sec11 .voice_pop img {
	max-width: 90%;
	max-height: 90%;
	object-fit: contain;
}
#sec11 .voice_pop .close {
	position: absolute;
	color: white;
	cursor: pointer;
}
#sec11 .voice_pop .close svg {
	width: 100%;
	height: 100%;
}
#sec11 .voice_slider .item .data .rating {
	text-align: left;
}
#sec11 .voice_slider .item .data .rating dt {
	margin-bottom: 0.2em;
}
#sec11 .voice_slider .item .data .rating dt:not(:first-child) {
	margin-top: 0.5em;
}
#sec11 .voice_slider .item .data .rating dd {
	font-weight: bold;
	color: #ff8c33;
}
#sec11 .voice_slider .item .data .rating dd .star {
	position: relative;
	display: inline-block;
	vertical-align: top;
	font-weight: normal;
	color: #adabab;
	white-space: nowrap;
}
#sec11 .voice_slider .item .data .rating dd .star::after {
	content: '★★★★★';
	position: absolute;
	top: 0;
	left: 0;
	color: #ff8c33;
	overflow: hidden;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="5"]::after {
	width: 100%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="4.5"]::after {
	width: 90%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="4"]::after {
	width: 80%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="3.5"]::after {
	width: 70%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="3"]::after {
	width: 60%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="2.5"]::after {
	width: 50%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="2"]::after {
	width: 40%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="1.5"]::after {
	width: 30%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="1"]::after {
	width: 20%;
}
#sec11 .voice_slider .item .data .rating dd .star[data-rate="0.5"]::after {
	width: 10%;
}
#sec11 .voice_slider .item .text {
	text-align: left;
}
#sec11 .voice_slider .item:not(.show) .text {
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
	overflow: hidden;
}
#sec11 .voice_slider .item:not(.show) .text br {
	display: none;
}
#sec11 .voice_slider .item .more {
	position: absolute;
	bottom: 0;
	right: -0.3em;
	padding-left: 0.3em;
	text-decoration: underline;
	color: #2a8ab9;
	background: #f3f9fc;
	cursor: pointer;
}

@media ( min-width: 961px ){
	#sec11{
		padding: 80px 0 100px;
	}
	#sec11 .tit{
		font-size: 40px;
		margin: 0 0 50px;
	}
	#sec11 .voice_slider {
		padding: 10px;
	}
	#sec11 .voice_slider .swiper {
		padding: 0 75px;
	}
	#sec11 .voice_slider .swiper .slide_prev,
	#sec11 .voice_slider .swiper .slide_next {
		width: 40px;
		height: 40px;
		top: calc(50% - 20px);
	}
	#sec11 .voice_slider .item {
		width: 400px;
		padding: 27px;
		border-radius: 15px;
	}
	#sec11 .voice_slider .item.swiper-slide-prev,
	#sec11 .voice_slider .item.swiper-slide.before-prev {
		transform: translateX(-60px);
	}
	#sec11 .voice_slider .item.swiper-slide.after-next {
		transform: translateX(60px);
	}
	#sec11 .voice_slider .item::before {
		border-radius: 15px;
	}
	#sec11 .voice_slider .item::before {
		box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25);
	}
	#sec11 .voice_slider .item .title {
		margin-bottom: 19px;
		padding: 8.1px 1em;
		font-size: 14px;
		line-height: 1.2;
	}
	#sec11 .voice_slider .item .data {
		gap: 15px;
	}
	#sec11 .voice_slider .item .data .img {
		flex-basis: 189px;
		max-width: 189px;
		border: 1px #ccc solid;
	}
	#sec11 .voice_slider .item .data .img[data-pop]::after {
		width: 30px;
		height: 30px;
		bottom: 5px;
		right: 5px;
	}
	#sec11 .voice_slider .item .data .rating {
		font-size: 13.19px;
		line-height: 1.2;
	}
	#sec11 .voice_pop .close {
		width: 30px;
		height: 30px;
		top: 20px;
		right: 20px;
	}
	#sec11 .voice_slider .item .text {
		margin-top: 19px;
		font-size: 15px;
		line-height: 1.758;
	}
	#sec11 .voice_slider .item:not(.show) .text {
		height: calc(1.758em * 4);
	}
	#sec11 .voice_slider .item .more {
		font-size: 15px;
		line-height: 1.758;
	}
}
@media ( max-width: 960px ){
	#sec11{
		padding: 8.4vw 0 10.8vw;
	}
	#sec11 .tit{
		font-size: 5.333vw;
		margin: 0 0 5.733vw;
	}
	#sec11 .voice_slider {
		padding: 1.333vw;
	}
	#sec11 .voice_slider .swiper {
		width: 92%;
		margin: 0 auto;
		padding: 0 4vw;
	}
	#sec11 .voice_slider .swiper .slide_prev,
	#sec11 .voice_slider .swiper .slide_next {
		width: 8vw;
		height: 8vw;
		top: calc(50% - 4vw);
	}
	#sec11 .voice_slider .item {
		padding: 5.333vw 6vw;
		border-radius: 2vw;
	}
	#sec11 .voice_slider .item::before {
		border-radius: 2vw;
	}
	#sec11 .voice_slider .item::before {
		box-shadow: 0px 0px 1.333vw 0px rgba(0, 0, 0, 0.25);
	}
	#sec11 .voice_slider .item .title {
		margin-bottom: 2.667vw;
		padding: 1.067vw 1em;
		font-size: 3.733vw;
		line-height: 1.2;
	}
	#sec11 .voice_slider .item .data {
		gap: 2vw;
	}
	#sec11 .voice_slider .item .data .img {
		flex-basis: 53.7%;
		border: 0.133vw #ccc solid;
	}
	#sec11 .voice_slider .item .data .img[data-pop]::after {
		width: 5.333vw;
		height: 5.333vw;
		bottom: 0.667vw;
		right: 0.667vw;
	}
	#sec11 .voice_slider .item .data .rating {
		font-size: 2.667vw;
		line-height: 1.2;
	}
	#sec11 .voice_pop .close {
		width: 4vw;
		height: 4vw;
		top: 2vw;
		right: 2vw;
	}
	#sec11 .voice_slider .item .text {
		margin-top: 19px;
		font-size: 3.333vw;
		line-height: 1.758;
	}
	#sec11 .voice_slider .item:not(.show) .text {
		height: calc(1.758em * 4);
	}
	#sec11 .voice_slider .item .more {
		font-size: 3.333vw;
		line-height: 1.758;
	}
}

/* = solition
-------------------------------------------------------------- */
.solition .ttl {
	color: var(--bule);
	font-weight: bold;
}
.solition .ttl span {
	display: block;
}
.solition .catch {
	position: relative;
	color: var(--bule);
	font-weight: bold;
}
.solition .catch::before {
	content: '';
	position: absolute;
	background: url(img/solition_catch_img.png) no-repeat center/contain;
}
.solition .catch span {
	color: var(--red);
}
.solition .solition_list li {
	position: relative;
}
.solition .solition_list li .in {
	position: relative;
	background: #f1f6ff;
}
.solition .solition_list li .in::after {
	content: '';
	position: absolute;
}
.solition .solition_list li:nth-child(1) .in::after {
	background: url(img/solition_icon_1.png) no-repeat center/contain;
}
.solition .solition_list li:nth-child(2) .in::after {
	background: url(img/solition_icon_2.png) no-repeat center/contain;
}
.solition .solition_list li:nth-child(3) .in::after {
	background: url(img/solition_icon_3.png) no-repeat center/contain;
}
.solition .solition_list li:nth-child(4) .in::after {
	background: url(img/solition_icon_4.png) no-repeat center/contain;
}
.solition .solition_list li .in .num {
	display: flex;
	justify-content: space-between;
	color: var(--bule);
	writing-mode: vertical-lr;
}
.solition .solition_list li .in dl {
	text-align: left;
}
.solition .solition_list li .in dl dt {
	color: var(--bule);
	font-weight: bold;
}
.solition .solition_list li .in dl dt span {
	display: block;
	color: #ad884f;
}
.solition .solition_list li .in dl dd {
	font-feature-settings: 'palt';
}
.solition .solition_list li .img {
	position: absolute;
}
@media ( min-width: 961px ){
	.solition {
		padding: 74px 0 131px;
	}
	.solition .ttl {
		font-size: 40px;
		margin: 0 0 59px;
	}
	.solition .ttl span {
		font-size: 25px;
		margin: 0 0 13px;
	}
	.solition .catch {
		font-size: 25px;
		max-width: 850px;
		padding: 23px 0 21px;
		margin: 0 auto 90px;
		padding-left: 33px;
		border-top: 1px solid var(--bule);
		border-bottom: 1px solid var(--bule);
	}
	.solition .catch::before {
		left: 19px;
		bottom: 0;
		width: 161px;
		height: 168px;
	}
	.solition .solition_list li .in {
		max-width: 773px;
		min-height: 284px;
		box-sizing: border-box;
		padding-bottom: 49px;
	}
	.solition .solition_list li + li {
		margin-top: 63px;
	}
	.solition .solition_list li .in {
		padding-top: 58px;
	}
	.solition .solition_list li:nth-child(even) .in {
		margin-left: auto;
		padding-left: 150px;
	}
	.solition .solition_list li:nth-child(odd) .in {
		padding-left: 75px;
	}
	.solition .solition_list li:nth-child(1) .in::after {
		left: -32px;
		bottom: 30px;
		width: 155px;
		height: 149px;
	}
	.solition .solition_list li:nth-child(2) .in::after {
		right: -23px;
		top: 14px;
		width: 122px;
		height: 139px;
	}
	.solition .solition_list li:nth-child(3) .in::after {
		right: 147px;
		top: -15px;
		width: 146px;
		height: 158px;
	}
	.solition .solition_list li:nth-child(4) .in::after {
		right: -7px;
		top: -9px;
		width: 162px;
		height: 78px;
	}
	.solition .solition_list li .in .num {
		position: absolute;
		top: -32px;
		font-size: 14px;
		height: 172px;
		padding-right: 9px;
		border-right: 1px solid var(--bule);
	}
	.solition .solition_list li:nth-child(odd) .in .num {
		left: 20px;
	}
	.solition .solition_list li:nth-child(even) .in .num {
		left: 90px;
	}
	.solition .solition_list li .in dl dt {
		font-size: 27px;
		margin-bottom: 35px;
	}
	.solition .solition_list li .in dl dt span {
		font-size: 40px;
		margin-top: 15px;
	}
	.solition .solition_list li .in dl dd {
		font-size: 16px;
		line-height: 1.875;
		letter-spacing: 0.025em;
	}
	.solition .solition_list li:first-child .in dl dd {
		padding-left: 83px;
		width: 510px;
	}
	.solition .solition_list li .img {
		top: -32px;
		width: 30%;
	}
	.solition .solition_list li:nth-child(odd) .img {
		right: 0;
	}
	.solition .solition_list li:nth-child(even) .img {
		left: 0;
	}
	.solition .solition_list li .img img {
		width: 100%;
		aspect-ratio: 300 / 280;
	}
	.solition .solition_list li .img1 img {
		aspect-ratio: 300 / 345;
	}
}
@media ( max-width: 960px ){
	.solition {
		padding: 8vw 0 18.533vw;
	}
	.solition .ttl {
		font-size: 5.333vw;
		margin: 0 0 8vw;
	}
	.solition .ttl span {
		font-size: 3.467vw;
		margin: 0 0 2vw;
	}
	.solition .catch {
		font-size: 4.667vw;
		line-height: 1.285;
		font-feature-settings: 'palt';
		padding: 2vw 0 2.133vw;
		margin: 0 0 23.067vw;
		padding-left: 25vw;
		border-top: 1px solid var(--bule);
		border-bottom: 1px solid var(--bule);
	}
	.solition .catch::before {
		left: 2.4vw;
		bottom: 0;
		width: 29.333vw;
		height: 30.533vw;
	}
	.solition .solition_list li:nth-child(odd) {
		margin-left: -4vw;
	}
	.solition .solition_list li:nth-child(even) {
		margin-right: -4vw;
	}
	.solition .solition_list li + li {
		margin-top: 25.333vw;
	}
	.solition .solition_list li:nth-child(1) .in {
		padding: 7.867vw 0 5.067vw;
	}
	.solition .solition_list li:nth-child(2) .in {
		padding: 7.2vw 0 7.6vw;
	}
	.solition .solition_list li:nth-child(3) .in {
		padding: 12vw 0 6.267vw;
	}
	.solition .solition_list li:nth-child(4) .in {
		padding: 6.267vw 0 8vw;
	}
	.solition .solition_list li:nth-child(1) .in::after {
		right: -2.8vw;
		bottom: -16.267vw;
		width: 26.133vw;
		height: 25.6vw;
	}
	.solition .solition_list li:nth-child(2) .in::after {
		left: 2.267vw;
		bottom: -11.467vw;
		width: 26.533vw;
		height: 20.533vw;
		background: url(img/solition_icon_2_sp.png)no-repeat center/contain;
	}
	.solition .solition_list li:nth-child(3) .in::after {
		right: -2.667vw;
		bottom: -16.8vw;
		width: 22.933vw;
		height: 24.8vw;
	}
	.solition .solition_list li:nth-child(4) .in::after {
		left: -1.867vw;
		bottom: -7.2vw;
		width: 28vw;
		height: 13.467vw;
	}
	.solition .solition_list li .in .num {
		position: absolute;
		top: 0;
		font-size: 2.667vw;
		height: 25.333vw;
		padding-right: 0.8vw;
		border-right: 0.133vw solid var(--bule);
	}
	.solition .solition_list li:nth-child(odd) .in .num {
		left: 1.067vw;
	}
	.solition .solition_list li:nth-child(even) .in .num {
		left: 37.067vw;
	}
	.solition .solition_list li .in dl dt {
		font-size: 3.733vw;
		line-height: 1.357;
		font-feature-settings: 'palt';
		margin-bottom: 35px;
	}
	.solition .solition_list li:nth-child(odd) .in dl dt {
		padding-left: 8vw;
	}
	.solition .solition_list li:nth-child(even) .in dl dt {
		padding-left: 44.533vw;
	}
	.solition .solition_list li .in dl dt span {
		font-size: 5.333vw;
		margin-top: 0.667vw;
		line-height: 1.25;
	}
	.solition .solition_list li .in dl dd {
		font-size: 3.467vw;
		line-height: 1.73;
		letter-spacing: 0.025em;
		padding: 0 8vw;
	}
	.solition .solition_list li .img {
		top: -14.667vw;
		width: 40vw;
	}
	.solition .solition_list li:nth-child(odd) .img {
		right: -4vw;
	}
	.solition .solition_list li:nth-child(even) .img {
		left: -4vw;
	}
}

/* = service
-------------------------------------------------------------- */
.service {
	background: #dfe8fa;
}
.service .ttl {
	color: var(--bule);
	font-weight: bold;
}
.service .ttl span {
	display: block;
}
.service .list_wrap .list_caption {
	position: relative;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.05em;
	background: #40409a;
}
.service .list_wrap .list_caption::before,
.service .list_wrap .list_caption::after {
	content: '';
	position: absolute;
}
.service .list_wrap.list_1 .list_caption::before {
	background: url(img/service_icon_1.png) no-repeat center/contain;
}
.service .list_wrap.list_2 .list_caption::before {
	background: url(img/service_icon_2.png) no-repeat center/contain;
}
.service .list_wrap.list_3 .list_caption::before {
	background: url(img/service_icon_3.png) no-repeat center/contain;
}
.service .list_wrap.list_4 .list_caption::before {
	background: url(img/service_icon_4.png) no-repeat center/contain;
}
.service .list_wrap .list_caption::after {
	left: 0;
	right: 0;
	margin: 0 auto;
	clip-path: polygon(100% 0, 0 0, 50% 100%);
	background: #40409a;
}
.service .list_wrap ul li {
	background: #fff;
	overflow: hidden;
}
.service .list_wrap ul li .list_ttl {
	color: var(--bule);
	font-weight: bold;
}
.service .list_wrap ul li .btn a {
	position: relative;
	display: block;
	color: #fff;
	font-weight: 500;
	background: #ad884f;
}
.service .list_wrap ul li .btn a::after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: url(img/btn_arrow.png) no-repeat center center / contain;
}
@media ( min-width: 961px ){
	.service {
		padding: 78px 0 0;
	}
	.service ul {
		max-width: 850px;
		margin: 0 auto;
	}
	.service .ttl {
		font-size: 40px;
		margin: 0 0 66px;
	}
	.service .ttl span {
		font-size: 25px;
		margin: 0 0 13px;
	}
	.service .list_wrap {
		max-width: 850px;
		margin: 0 auto;
	}
	.service .list_wrap {
		margin-bottom: 82px;
	}
	.service .list_wrap .list_caption {
		font-size: 28px;
		padding: 31px 0;
		border-radius: 10px;
		margin: 0 0 42px;
	}
	.service .list_wrap.list_1 .list_caption::before {
		top: -25px;
		left: 53px;
		width: 146px;
		height: 99px;
	}
	.service .list_wrap.list_2 .list_caption::before {
		top: -43px;
		left: 136px;
		width: 139px;
		height: 123px;
	}
	.service .list_wrap.list_3 .list_caption::before {
		top: -32px;
		left: 14px;
		width: 120px;
		height: 111px;
	}
	.service .list_wrap.list_4 .list_caption::before {
		top: 14px;
		left: -14px;
		width: 130px;
		height: 60px;
	}
	.service .list_wrap .list_caption::after {
		bottom: -25px;
		width: 44px;
		height: 26px;
	}
	.service .list_wrap.list_3 .list_caption {
		padding-left: 85px;
	}
	.service .list_wrap ul {
		display: flex;
		flex-wrap: wrap;
		gap: 45px 50px;
	}
	.service .list_wrap ul li {
		display: flex;
		flex-direction: column;
		width: calc((100% - 50px) / 2);
		border-radius: 20px;
		box-sizing: border-box;
	}
	.service .list_wrap ul li.wide {
		flex: 1 1 100%;
		flex-direction: row;
		padding-bottom: 0;
	}
	.service .list_wrap ul li .img img {
		width: 100%;
		aspect-ratio: 400 / 180;
	}
	.service .list_wrap ul li.wide .img {
		flex: 0 0 449px;
	}
	.service .list_wrap ul li.wide .img img {
		aspect-ratio: 449 / 280;
	}
	.service .list_wrap ul li .text_wrap {
		display: flex;
		flex-direction: column;
		height: 100%;
		padding-bottom: 32px;
		box-sizing: border-box;
	}
	.service .list_wrap ul li .text {
		text-align: left;
		font-size: 16px;
		line-height: 1.625;
		letter-spacing: 0.025em;
		padding: 0 36px;
		margin: 0 0 18px;
		box-sizing: border-box;
	}
	.service .list_wrap ul li.wide .text_wrap .text {
		margin: 0 0 10px;
	}
	.service .list_wrap.list_1 ul li:nth-child(1) .logo {
		padding: 33px 0 28px;
	}
	.service .list_wrap.list_1 ul li:nth-child(2) .logo {
		padding: 30px 0 16px;
	}
	.service .list_wrap.list_1 ul li:nth-child(3) .logo {
		padding: 30px 0 12px;
	}
	.service .list_wrap.list_2 ul li:nth-child(1) .logo {
		padding: 30px 0 22px;
	}
	.service .list_wrap.list_2 ul li:nth-child(2) .logo {
		padding: 30px 0 13px;
	}
	.service .low {
		display: flex;
		gap: 0 50px;
		max-width: 850px;
		margin: 0 auto;
	}
	.service .low .list_wrap {
		width: calc((100% - 50px) / 2);
	}
	.service .low .list_wrap ul li {
		width: 100%;
	}
	.service .list_wrap.list_3 ul li .list_ttl {
		font-size: 32px;
		padding: 38px 0 29px;
	}
	.service .list_wrap.list_4 ul li .list_ttl {
		font-size: 30px;
		line-height: 1.2;
		padding: 30px 0 23px;
	}
	.service .list_wrap ul li .btn {
		width: 247px;
		margin: auto auto 0;
	}
	.service .list_wrap ul li .btn a {
		font-size: 15px;
		padding: 18px 0 19px;
		border-radius: 25px;
		transition: opacity .3s;
	}
	.service .list_wrap ul li .btn a:hover {
		opacity: 0.8;
	}
	.service .list_wrap ul li .btn a::after {
		right: 13px;
		width: 26px;
		height: 26px;
	}
}
@media ( max-width: 960px ){
	.service {
		padding: 10.4vw 0 12.667vw;
	}
	.service .ttl {
		font-size: 5.333vw;
		margin: 0 0 8.933vw;
	}
	.service .ttl span {
		font-size: 3.467vw;
		margin: 0 0 1.867vw;
	}
	.service .list_wrap:not(.list_4) {
		margin-bottom: 82px;
	}
	.service .list_wrap .list_caption {
		font-size: 4vw;
		padding: 4vw 0 4.133vw;
		border-radius: 1.333vw;
		margin: 0 0 5.467vw;
	}
	.service .list_wrap.list_1 .list_caption {
		padding-left: 14.133vw;
	}
	.service .list_wrap.list_1 .list_caption::before {
		top: -3.333vw;
		left: 1.2vw;
		width: 19.467vw;
		height: 13.2vw;
	}
	.service .list_wrap.list_2 .list_caption::before {
		top: -5.733vw;
		left: 1.6vw;
		width: 18.533vw;
		height: 16.4vw;
	}
	.service .list_wrap.list_3 .list_caption::before {
		top: -4.267vw;
		left: 2.4vw;
		width: 16vw;
		height: 14.8vw;
	}
	.service .list_wrap.list_4 .list_caption::before {
		top: 0.4vw;
		left: 2.933vw;
		width: 20.533vw;
		height: 9.467vw;
	}
	.service .list_wrap .list_caption::after {
		bottom: -3.333vw;
		width: 5.867vw;
		height: 3.467vw;
	}
	.service .list_wrap ul li {
		display: flex;
		height: 40vw;
		border-radius: 2.667vw;
	}
	.service .list_wrap ul li + li {
		margin-top: 2.667vw;
	}
	.service .list_wrap ul li .logo {
		margin: 0 auto;
	}
	.service .list_wrap.list_1 ul li:nth-child(1) .logo {
		width: 37.333vw;
		padding: 4.933vw 0 4vw;
	}
	.service .list_wrap.list_1 ul li:nth-child(2) .logo {
		width: 36.933vw;
		padding: 4vw 0 2.4vw;
	}
	.service .list_wrap.list_1 ul li:nth-child(3) .logo {
		width: 23.333vw;
		padding: 3.6vw 0 2.4vw;
	}
	.service .list_wrap.list_2 ul li:nth-child(1) .logo {
		width: 44.533vw;
		padding: 3.6vw 0 3.333vw;
	}
	.service .list_wrap.list_2 ul li:nth-child(2) .logo {
		width: 36.667vw;
		padding: 3.067vw 0 0.267vw;
	}
	.service .list_wrap ul li .img {
		flex: 0 0 26.667vw;
	}
	.service .list_wrap ul li .img img {
		width: 100%;
	}
	.service .list_wrap ul li .text_wrap {
		display: flex;
		flex-direction: column;
		padding: 0 0 2.933vw 0.667vw;
	}
	.service .list_wrap ul li .text {
		text-align: left;
		font-size: 3.2vw;
		line-height: 1.458;
		font-feature-settings: 'palt';
		padding: 0 4vw;
		box-sizing: border-box;
	}
	.service .list_wrap.list_1 ul li:nth-child(2) .text {
		letter-spacing: -0.05em;
	}
	.service .list_wrap ul li .btn {
		width: 40vw;
		margin: auto auto 0;
	}
	.service .list_wrap ul li .btn a {
		font-size: 3.467vw;
		padding: 1.733vw 1.733vw 1.867vw 0;
		border-radius: 3.333vw;
	}
	.service .list_wrap ul li .btn a::after {
		right: 1.733vw;
		width: 4vw;
		height: 4vw;
	    background-size: 90%;
	}
	.service .list_wrap.list_3 ul li .list_ttl,
	.service .list_wrap.list_4 ul li .list_ttl {
		font-size: 4.267vw;
		padding: 6.533vw 0 4.4vw;
	}
}

/* = reason
-------------------------------------------------------------- */
.reason .ttl {
	color: #fff;
	font-weight: bold;
}
.reason .ttl span {
	display: block;
}
.reason .reason_list dl {
	background: #Fff;
}
.reason .reason_list dl dt {
	display: flex;
	align-items: center;
	font-weight: bold;
}
.reason .reason_list dl dt .list_num {
	color: var(--bule);
}
.reason .reason_list dl dt .list_num .num {
	display: block;
	font-weight: 400;
}
.reason .reason_list dl dt .list_ttl {
	color: #ad884f;
}
.reason .reason_list dl dd {
	display: flex;
}
.reason .reason_list dl dd .text {
	text-align: left;
}
@media ( min-width: 961px ){
	.reason {
		padding: 73px 0 131px;
		background: url(img/bg_reason.jpg)no-repeat center top/cover;
	}
	.reason .ttl {
		font-size: 40px;
		margin: 0 0 52px;
	}
	.reason .ttl span {
		font-size: 25px;
		margin: 0 0 13px;
	}
	.reason .reason_list {
		display: flex;
		flex-wrap: wrap;
		gap: 50px;
	}
	.reason .reason_list dl {
		flex: 0 0 calc((100% - 50px) / 2);
		padding: 28px 32px 25px 0;
		min-height: 225px;
		box-sizing: border-box;
	}
	.reason .reason_list dl dt {
		margin: 0 0 26px;
	}
	.reason .reason_list dl dt .list_num {
		font-size: 12px;
		padding: 2px 21px 0 26px;
		margin-right: 18px;
		border-right: 1px solid var(--bule);
	}
	.reason .reason_list dl dt .list_num .num {
		font-size: 27px;
		margin-top: 1px;
	}
	.reason .reason_list dl dt .list_ttl {
		font-size: 30px;
	}
	.reason .reason_list dl:nth-child(2) dt .list_ttl,
	.reason .reason_list dl:nth-child(5) dt .list_ttl {
		font-size: 28px;
	}
	.reason .reason_list dl dd .icon {
		flex: 0 0 140px;
	}
	.reason .reason_list dl:nth-child(2) dd .icon {
		padding-top: 8px;
	}
	.reason .reason_list dl:nth-child(3) dd .icon {
		padding-top: 12px;
	}
	.reason .reason_list dl:nth-child(5) dd .icon {
		padding-top: 8px;
	}
	.reason .reason_list dl dd .text {
		font-size: 16px;
		font-feature-settings: 'palt';
		line-height: 1.875;
		letter-spacing: 0.025em;
	}
	.reason .reason_list dl:nth-child(4) dd .text {
		line-height: 1.625;
	}
}
@media ( max-width: 960px ){
		.reason {
		padding: 9.733vw 0 13.067vw;
		background: url(img/bg_reason_sp.jpg)no-repeat center center/cover;
	}
	.reason .ttl {
		font-size: 5.333vw;
		margin: 0 0 7.067vw;
	}
	.reason .ttl span {
		font-size: 3.467vw;
		margin: 0 0 1.867vw;
	}
	.reason .reason_list dl {
		padding: 5.733vw 4vw 5.2vw;
		min-height: 37.333vw;
		box-sizing: border-box;
	}
	.reason .reason_list dl + dl {
		margin-top: 2.667vw;
	}
	.reason .reason_list dl dt {
		margin: 0 0 3.467vw;
	}
	.reason .reason_list dl dt .list_num {
		font-size: 2.4vw;
		padding: 0 3.333vw 0 0.8vw;
		margin-right: 2.933vw;
		border-right: 0.133vw solid var(--bule);
	}
	.reason .reason_list dl dt .list_num .num {
		font-size: 5.333vw;
		margin-top: 0.133vw;
	}
	.reason .reason_list dl dt .list_ttl {
		font-size: 4.667vw;
	}
	.reason .reason_list dl:nth-child(1) dd .icon {
		flex: 0 0 12.667vw;
		padding: 0 4.133vw 0 0.533vw;
	}
	.reason .reason_list dl:nth-child(2) dd .icon {
		flex: 0 0 13.467vw;
		padding: 0 2.933vw 0 0.667vw;
	}
	.reason .reason_list dl:nth-child(3) dd .icon {
		flex: 0 0 15.067vw;
		padding: 1.067vw 1.867vw 0 0.267vw;
	}
	.reason .reason_list dl:nth-child(4) dd .icon {
		flex: 0 0 11.067vw;
		padding: 1.067vw 3.333vw 0 0.133vw;
	}
	.reason .reason_list dl:nth-child(5) dd .icon {
		flex: 0 0 13.467vw;
		padding: 0.933vw 3.467vw 0 0.533vw;
	}
	.reason .reason_list dl:nth-child(6) dd .icon {
		flex: 0 0 11.733vw;
		padding: 0 3.867vw 0 2vw;
	}
	.reason .reason_list dl dd .text {
		font-size: 3.467vw;
		font-feature-settings: 'palt';
		line-height: 1.538;
		letter-spacing: 0.025em;
	}
	.reason .reason_list dl:nth-child(6) dd .text {
		padding-top: 0.267vw;
	}
}

/* = faq
-------------------------------------------------------------- */
.faq {
	background: #f1f6ff;
}
.faq .ttl {
	color: var(--bule);
	font-weight: bold;
}
.faq .list_wrap > dl {
	text-align: left;
}
.faq .list_wrap > dl .accordion {
	position: relative;
	font-weight: bold;
	background: #fff;
	cursor: pointer;
}
.faq .list_wrap > dl .accordion::after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: url(img/accordion_arrow.png) no-repeat center center/contain;
}
.faq .list_wrap > dl .accordion.active::after {
	background: url(img/accordion_arrow_up.png) no-repeat center center/contain;
}
.faq .list_wrap > dl .accordion + dd {
	display: none;
}
.faq .list_wrap > dl .accordion.active + dd {
	display: block;
}
.faq .list_wrap > dl .accordion + dd > dl dt {
	color: var(--bule);
	font-weight: 500;
}
@media ( min-width: 961px ){
	.faq {
		padding: 80px 0 82px;
	}
	.faq .ttl {
		font-size: 40px;
		margin: 0 0 57px;
	}
	.faq .list_wrap > dl + dl {
		margin-top: 21px;
	}
	.faq .list_wrap > dl .accordion {
		font-size: 23px;
		padding: 28px 34px;
		border-radius: 10px;
		border: 1px solid var(--bule)
	}
	.faq .list_wrap > dl .accordion::after {
		right: 25px;
		width: 26px;
		height: 26px;
	}
	.faq .list_wrap > dl .accordion + dd {
		margin-top: 28px;
	}
	.faq .list_wrap > dl .accordion + dd > dl {
		padding: 27px 0;
	}
	.faq .list_wrap > dl .accordion + dd > dl + dl {
		border-top: 1px solid #cfcfcf;
	}
	.faq .list_wrap > dl .accordion + dd > dl dt {
		font-size: 17px;
		line-height: 1.88;
		padding: 0 0 1px 53px;
		margin: 0 0 18px;
		background: url(img/q.png) no-repeat top left 5px/33px;
	}
	.faq .list_wrap > dl .accordion + dd > dl dd {
		font-size: 16px;
		line-height: 2;
		padding: 0 0 1px 53px;
		background: url(img/a.png) no-repeat top left 5px/33px;
	}
}
@media ( max-width: 960px ){
	.faq {
		padding: 8.8vw 0 82px;
	}
	.faq .ttl {
		font-size: 5.333vw;
		margin: 0 0 7.6vw;
	}
	.faq .list_wrap > dl + dl {
		margin-top: 2.933vw;
	}
	.faq .list_wrap > dl .accordion {
		font-size: 4vw;
		padding: 3.467vw 4.533vw 3.067vw;
		border-radius: 1.333vw;
		border: 0.133vw solid var(--bule)
	}
	.faq .list_wrap > dl .accordion::after {
		right: 4vw;
		width: 4vw;
		height: 4vw;
		background-size: 98%;
	}
	.faq .list_wrap > dl .accordion.active::after {
		background-size: 98%;
	}
	.faq .list_wrap > dl .accordion + dd {
		margin-top: 3.2vw;
	}
	.faq .list_wrap > dl .accordion + dd > dl {
		padding: 4vw 0;
	}
	.faq .list_wrap > dl .accordion + dd > dl + dl {
		border-top: 0.133vw solid #cfcfcf;
	}
	.faq .list_wrap > dl .accordion + dd > dl dt {
		font-size: 3.733vw;
		line-height: 1.4285;
		padding: 1.333vw 0 0 10.667vw;
		margin: 0 0 2.8vw;
		min-height: 8vw;
		background: url(img/q.png) no-repeat top left /7.9vw;
		box-sizing: border-box;
	}
	.faq .list_wrap > dl .accordion + dd > dl dd {
		font-size: 3.467vw;
		line-height: 1.538;
		padding: 1.467vw 0 0 10.667vw;
		min-height: 8vw;
		background: url(img/a.png) no-repeat top left /7.9vw;
	}
}

/* = staff
-------------------------------------------------------------- */
.bg_blue {
	background: #40409a;
}
.staff .ttl {
	color: #fff;
	font-weight: bold;
}
.staff .ttl span {
	display: block;
}
.staff .staff_wrap {
	background: #fff;
}
.staff .staff_wrap ul {
	display: flex;
	flex-wrap: wrap;
}
.staff .staff_wrap ul li .name_wrap {
	font-weight: 500;
}
.staff .staff_wrap ul li .name_wrap .name {
	color: var(--bule);
}
@media ( min-width: 961px ){
	.staff {
		padding: 86px 0 0;
	}
	.staff .ttl {
		font-size: 40px;
		margin: 0 0 54px;
	}
	.staff .ttl span {
		font-size: 25px;
		margin: 0 0 13px;
	}
	.staff .staff_wrap {
		padding: 70px 75px 78px;
	}
	.staff .staff_wrap .main {
		gap: 40px 30px;
	}
	.staff .staff_wrap .main li {
		flex: 0 0 calc((100% - 90px) / 4);
		box-sizing: border-box;
	}
	.staff .staff_wrap .main li .img {
		border: 1px solid #ad884f;
		margin: 0 0 18px;
	}
	.staff .staff_wrap ul li .name_wrap .potion {
		font-size: 11px;
		line-height: 1.36;
		margin: 0 0 6px;
	}
	.staff .staff_wrap ul li .name_wrap .name {
		font-size: 15px;
	}
	.staff .staff_wrap .sub {
		margin: 41px 0 0;
		gap: 0 25px;
	}
	.staff .staff_wrap .sub li {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 150px;
		height: 150px;
		box-sizing: border-box;
		border: 1px solid #ad884f;
	}
}
@media ( max-width: 960px ){
	.staff {
		padding: 10vw 0 0;
	}
	.staff .ttl {
		font-size: 5.333vw;
		margin: 0 0 8.8vw;
	}
	.staff .ttl span {
		font-size: 3.467vw;
		margin: 0 0 1.867vw;
	}
	.staff .staff_wrap {
		padding: 9.2vw 4vw 4.533vw;
	}
	.staff .staff_wrap .main {
		gap: 4.533vw 4vw;
	}
	.staff .staff_wrap .main li {
		flex: 0 0 calc((100% - 8vw) / 3);
		box-sizing: border-box;
	}
	.staff .staff_wrap .main li .img {
		border: 0.133vw solid #ad884f;
		margin: 0 0 2.133vw;
	}
	.staff .staff_wrap .main li .name_wrap .potion {
		font-size: 2.133vw;
		margin: 0 0 0.933vw;
	}
	.staff .staff_wrap .main li .name_wrap .name {
		font-size: 2.933vw;
	}
	.staff .staff_wrap .sub {
		margin: 5.2vw 0 0;
		gap: 0 1.333vw;
	}
	.staff .staff_wrap .sub li {
		display: flex;
		align-items: center;
		justify-content: center;
		flex: 0 0 20vw;
		height: 20vw;
		box-sizing: border-box;
		border: 0.133vw solid #ad884f;
	}
	.staff .staff_wrap .sub li .name_wrap .potion {
		font-size: 1.867vw;
		line-height: 1.285;
		margin: 0 0 0.667vw;
	}
	.staff .staff_wrap .sub li .name_wrap .name {
		font-size: 2.667vw;
	}
}
/* = access
-------------------------------------------------------------- */
.access .ttl {
	color: #fff;
	font-weight: bold;
}
.access .access_wrap {
	background: #fff;
}
.access .access_wrap .map {
	position: relative;
}
.access .access_wrap .map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.access .access_wrap .accsec_img_wrap {
	display: flex;
	justify-content: space-between;
	text-align: left;
}
.access .access_wrap .accsec_img_wrap .img_caption {
	color: #6e6e6e;
}
.access .access_wrap .wrap dl dt {
	color: #40409a;
	font-weight: 500;
}
@media ( min-width: 961px ){
	.access {
		padding: 77px 0 97px;
	}
	.access .ttl {
		font-size: 40px;
		margin: 0 0 45px;
	}
	.access .access_wrap {
		padding: 80px 75px 65px;
	}
	.access .access_wrap .map {
		padding-top: 41.17%;
		margin: 0 0 48px;
	}
	.access .access_wrap .accsec_img_wrap {
		margin: 0 0 55px;
	}
	.access .access_wrap .accsec_img_wrap .img_caption {
		font-size: 13px;
		margin-top: 11px;
	}
	.access .access_wrap .wrap {
		display: flex;
		justify-content: space-between;
		text-align: left;
	}
	.access .access_wrap .wrap dl dt {
		font-size: 14px;
		margin: 0 0 14px;
	}
	.access .access_wrap .wrap dl dd {
		font-size: 15px;
		line-height: 1.46;
	}
	.access .access_wrap .wrap .info dd {
		padding-left: 1em;
		text-indent: -1em;
	}
}
@media ( max-width: 960px ){
	.access {
		padding: 8.267vw 0 14vw;
	}
	.access .ttl {
		font-size: 5.333vw;
		margin: 0 0 6vw;
	}
	.access .access_wrap {
		padding: 4vw 4vw 8vw;
	}
	.access .access_wrap .map {
		padding-top: 57.14%;
		margin: 0 0 4vw;
	}
	.access .access_wrap .accsec_img_wrap {
		gap: 0 1.067vw;
		margin: 0 0 4.267vw;
	}
	.access .access_wrap .accsec_img_wrap .img_caption {
		font-size: 2.133vw;
		margin-top: 1.467vw;
	}
	.access .access_wrap .wrap {
		text-align: left;
	}
	.access .access_wrap .wrap dl.location {
		margin: 0 0 4.667vw;
	}
	.access .access_wrap .wrap dl dt {
		font-size: 3.467vw;
		margin: 0 0 2vw;
	}
	.access .access_wrap .wrap dl dd {
		font-size: 3.2vw;
		line-height: 1.458;
		font-feature-settings: 'palt';
	}
	.access .access_wrap .wrap .info dd {
		padding-left: 0.5em;
		text-indent: -0.5em;
	}
}

/* = column
-------------------------------------------------------------- */
.column {
	color: #fff;
	box-sizing: border-box;
}
.column .caption {
	display: inline-block;
	font-weight: bold;
	text-align: center;
}
.column .btn a {
	position: relative;
	display: block;
	color: #fff;
	background: #ad884f;
}
.column .btn a::after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: url(img/btn_arrow.png) no-repeat center center/ contain;
	}
@media ( min-width: 961px ){
	.column {
		padding: 65px 0 52px;
		background: url(img/bg_column.jpg) no-repeat center top/cover;
	}
	.column .caption {
		font-size: 18px;
		padding: 12px 26px;
		margin: 0 0 37px;
		border: 2px solid #fff;
	}
	.column .ttl {
		margin: 0 0 33px;
	}
	.column .text {
		font-size: 22px;
		margin: 0 0 49px;
	}
	.column .btn {
		max-width: 247px;
		margin: 0 auto;
	}
	.column .btn a {
		font-size: 15px;
		padding: 18px 0 19px;
		border-radius: 25px;
		transition: opacity .3s;
	}
	.column .btn a:hover {
		opacity: 0.8;
	}
	.column .btn a::after {
		right: 13px;
		width: 26px;
		height: 26px;
	}
}
@media ( max-width: 960px ){
	.column {
		padding: 8.8vw 0 5.6vw;
		background: url(img/bg_column_sp.jpg) no-repeat center top/cover;
	}
	.column .caption {
		font-size: 2.4vw;
		padding: 1.6vw 3.467vw;
		margin: 0 0 4.933vw;
		border: 0.267vw solid #fff;
	}
	.column .ttl {
		width: 63.467vw;
		margin: 0 auto 4.4vw;
	}
	.column .text {
		font-size: 2.933vw;
		margin: 0 0 6.267vw;
	}
	.column .btn {
		max-width: 40vw;
		margin: 0 auto;
	}
	.column .btn a {
		font-size: 2.667vw;
		padding: 2.667vw 0 2.8vw;
		border-radius: 4vw;
	}
	.column .btn a::after {
		right: 2.133vw;
		width: 4vw;
		height: 4vw;
		background-size: 98%;
	}
}
/* = sec12
-------------------------------------------------------------- */
#sec12 {
	background: #f1f6ff;
}
#sec12 .tab {
	display: flex;
	margin: 0;
	padding: 0;
}
#sec12 .tab li {
	width: 33.33%;
}
#sec12 .tab li a {
	display: block;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}
#sec12 #form01{
	background: #cc2e6a;
}
#sec12 #form02{
	background: #2c5ea9;
}
#sec12 #form03{
	background: #f08c3e;
}
#sec12 .form_tbl{
	background: #fff;
}
#sec12 .form_tbl dl{
	width: 100%;
	text-align: left;
	box-sizing: border-box;
}
#sec12 .form_tbl dl:nth-child(even){
	background: #f7f7f7;
}
#sec12 .form_tbl dl.checkbox dt,
#sec12 .form_tbl dl.checkbox dd{
	position: relative;
	vertical-align: initial;
}
#sec12 .form_tbl dl.checkbox dt .must,
#sec12 .form_tbl dl.checkbox dt .any {
	position: absolute;
}
#sec12 .form_tbl dl dt{
	position: relative;
	box-sizing: border-box;
}
#sec12 .form_tbl dl dt span{
	display: inline-block;
	color: #fff;
}
#sec12 .form_tbl dl:not(.checkbox) dt span{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
#sec12 .form_tbl dl dt span.must{
	background: #c51d2e;
}
#sec12 .form_tbl dl dt span.any{
	background: #4b9cd0;
}
#sec12 .form_tbl dl.checkbox dd{
	display: flex;
	flex-wrap: wrap;
}
#sec12 .form_tbl dl.checkbox input[type="checkbox"],
#sec12 .form_tbl .conf label input[type="checkbox"] {
	appearance: none;     /* ブラウザ標準の見た目を消す */
	-webkit-appearance: none;
	-moz-appearance: none;
	opacity: 0;
	position: absolute;
}
#sec12 .form_tbl dl.checkbox label span,
#sec12 .form_tbl .conf label span {
	position: relative;
	display: inline-block;
	padding-left: 1.2em;
}
#sec12 .form_tbl dl.checkbox label span::before,
#sec12 .form_tbl .conf label span::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 0.8em;
	height: 0.8em;
	border: 1px solid #b1b1b1;
}
#sec12 .form_tbl dl.checkbox label input[type="checkbox"]:checked + span::after,
#sec12 .form_tbl .conf label input[type="checkbox"]:checked + span::after {
	content: '';
	position: absolute;
	left: 0.25em;
	top: 0.1em;
	width: 0.25em;
	height: 0.5em;
	transform: rotate(45deg);
}
#sec12 #form01 dl.checkbox label input[type="checkbox"]:checked + span::after {
	border: solid #cc2e6a;
	border-width: 0 0.15em 0.15em 0;
}
#sec12 #form02 dl.checkbox label input[type="checkbox"]:checked + span::after {
	border: solid #2c5ea9;
	border-width: 0 0.15em 0.15em 0;
}
#sec12 #form03 dl.checkbox label input[type="checkbox"]:checked + span::after {
	border: solid #f08c3e;
	border-width: 0 0.15em 0.15em 0;
}
#sec12 .form_tbl .conf label input[type="checkbox"]:checked + span::after {
	border: solid #518fbc;
	border-width: 0 0.15em 0.15em 0;
}
#sec12 .form_tbl dl dd span{
	display: block;
}
#sec12 .form_tbl dl dd span#err_item {
	margin-top: 1em;
}
#sec12 .form_tbl dl dd span.item{
	display: inline-block;
}
#sec12 .form_tbl dl:not(.checkbox) dd input,
#sec12 .form_tbl dl dd select{
	box-sizing: border-box;
}
#sec12 .form_tbl dl dd input:focus,
#sec12 .form_tbl dl dd textarea:focus,
#sec12 .form_tbl dl dd select:focus{
	outline: none;
}
#sec12 .form_tbl dl dd textarea{
	width: 100%;
	border-radius: 0.5em;
	padding: 1em;
	box-sizing: border-box;
}
#sec12 .form_tbl dl dd.add .ib {
    display: block;
    padding: 0;
}
#sec12 .form_tbl dl dd.add .ib:last-child {
    margin: 0;
}
#sec12 .form_tbl dl dd.add .ib input{
	width: 100%;
	box-sizing: border-box;
	margin: 0;
}
::-webkit-input-placeholder {
	color: #ccc;
}
::-moz-placeholder {
	color: #ccc; opacity: 1;
}
:-ms-input-placeholder {
	color: #ccc;
}	
#sec12 .form_tbl .conf a{
	display: inline-block;
	color: #518fbc;
}
#sec12 .form_tbl .conf a:hover{
	text-decoration: underline;
}
#sec12 .form_tbl .form_btn input{
	font-weight: bold;
	box-sizing: border-box;
	background: #fff;
	outline: none;
	-webkit-transition: all .4s;
	-moz-transition: all .4s;
	-ms-transition: all .4s;
	-o-transition: all .4s;
	transition: all .4s;
	opacity: 1;
	cursor: pointer;
}
#sec12 #form01 .form_tbl .form_btn input{
	color: #cc2e6a;
}
#sec12 #form02 .form_tbl .form_btn input{
	color: #2c5ea9;
}
#sec12 #form03 .form_tbl .form_btn input{
	color: #f08c3e;
}
#sec12 #form01 .form_tbl .form_btn input:hover{
	background: #cc2e6a;
	color: #fff;
}
#sec12 #form02 .form_tbl .form_btn input:hover{
	background: #2c5ea9;
	color: #fff;
}
#sec12 #form03 .form_tbl .form_btn input:hover{
	background: #f08c3e;
	color: #fff;
}
span.err,
#sec12 .form_tbl dl dd span.err {
    color: red;
	display: block;
}
#sec12 .form_tbl div.ib{
	display: inline-block;
}
#sec12 .form_tbl dl dd.datetime .ib input,
#sec12 .form_tbl dl dd.datetime .ib select{
	margin: 0;
}
#sec12 .form_tbl dl dd span.picker {
    display: block;
}

@media ( min-width: 961px ){
	#sec12 {
		padding: 125px 0 80px;
	}
	#sec12 .tab li a {
		height: 78px;
		line-height: 78px;
		font-size: 22px;
		border-radius: 13px 13px 0 0;
	}
	#sec12 .tab li.tab1 a{
		background: #cc2e6a url(img/icon_mail.png) no-repeat 55px center;
		padding: 0 0 0 30px;
	}
	#sec12 .tab li.tab2 a{
		background: #2c5ea9 url(img/icon_book.png) no-repeat 87px center;
		padding: 0 0 0 30px;
	}
	#sec12 .tab li.tab3 a{
		background: #f08c3e url(img/icon_cal.png) no-repeat 40px center;
		padding: 0 0 0 30px;
	}
	#sec12 .tab_box{
		padding: 75px;
		border-radius: 0 0 13px 13px;
	}
	#sec12 .form_tbl{
		padding: 55px 40px;
	}
	#sec12 .form_tbl dl{
		display: table;
		font-size: 15px;
		border-bottom: 1px dotted #ccc;
	}
	#sec12 .form_tbl dl:first-child{
		border-top: 1px dotted #ccc;
	}
	#sec12 .form_tbl dl:last-of-type{
		margin: 0 0 25px;
	}
	#sec12 .form_tbl dl dt,
	#sec12 .form_tbl dl dd{
		display: table-cell;
		vertical-align: middle;
	}
	#sec12 .form_tbl dl:not(.checkbox) dt .must,
	#sec12 .form_tbl dl:not(.checkbox) dt .any {
		right: 0;
	}
	#sec12 .form_tbl dl.checkbox dt .must,
	#sec12 .form_tbl dl.checkbox dt .any {
		top: 28px;
		right: 0;
	}
	#sec12 .form_tbl dl dt{
		line-height: 1.46;
		width: 238px;
		padding: 0 0 0 22px;
	}
	#sec12 .form_tbl dl dt span{
		padding: 2px 5px;
		font-size: 12px;
	}
	#sec12 .form_tbl dl dd{
		padding: 16px 22px 16px 20px;
	}
	#sec12 .form_tbl dl.checkbox dd{
		padding: 25px 22px 28px 20px;
	}
	#sec12 .form_tbl dl.checkbox dd ul + ul {
		margin-left: 10%;
	}
	#sec12 .form_tbl dl.checkbox dd ul li + li {
		margin-top: 1em;
	}
	#sec12 .form_tbl dl dd span.item{
		padding: 0 5px 0 0;
	}
	#sec12 .form_tbl dl:not(.checkbox) dd input,
	#sec12 .form_tbl dl dd select{
		height: 35px;
		border-radius: 0.5em;
		border: 1px solid #ccc;
		padding: 0 1em;
	}
	#sec12 .form_tbl dl dd select{
		width: 150px;
	}
	#sec12 .form_tbl dl dd textarea{
		height: 178px;
		border-radius: 0.5em;
		border: 1px solid #ccc;
		padding: 1em;
		box-sizing: border-box;
	}
	#sec12 .form_tbl dl dd.add input{
		width: 100px;
	}
	#sec12 .form_tbl dl dd.w1 input{
		width: 118px;
	}
	#sec12 .form_tbl dl dd.w2 input{
		width: 308px;
	}
	#sec12 .form_tbl dl dd.w3 input{
		width: 208px;
	}
	#sec12 .form_tbl dl dd.w1 input:first-of-type{
		margin: 0 20px 0 0;
	}
	#sec12 .form_tbl dl dd.add .ib {
		margin: 0 0 10px;
		padding: 0;
	}
	#sec12 .form_tbl dl dd.add .ib:last-child {
		margin: 0;
	}
	#sec12 .form_tbl dl dd.add .ib input{
		width: 100%;
		box-sizing: border-box;
		margin: 0;
	}	
	#sec12 .form_tbl .conf{
		margin: 0 0 30px;
	}
	#sec12 .form_tbl .conf a{
		font-size: 15px;
		padding: 0 0 0 0.5em;
	}
	#sec12 .form_tbl .form_btn input{
		font-size: 22px;
		width: 435px;
		height: 76px;
		border-radius: 13px;
	}
	#sec12 #form01 .form_tbl .form_btn input{
		border-top: 3px solid #cc2e6a;
		border-left: 3px solid #cc2e6a;
		border-right: 3px solid #cc2e6a;
		border-bottom: 7px solid #cc2e6a;
	}
	#sec12 #form02 .form_tbl .form_btn input{
		border-top: 3px solid #2c5ea9;
		border-left: 3px solid #2c5ea9;
		border-right: 3px solid #2c5ea9;
		border-bottom: 7px solid #2c5ea9;
	}
	#sec12 #form03 .form_tbl .form_btn input{
		border-top: 3px solid #f08c3e;
		border-left: 3px solid #f08c3e;
		border-right: 3px solid #f08c3e;
		border-bottom: 7px solid #f08c3e;
	}
	span.err,
	#sec12 .form_tbl dl dd span.err {
		font-size: 11px;
		padding: 5px;
	}
	#sec12 .form_tbl dl dd.datetime ul {
		margin: 0 0 10px;
	}
	#sec12 .form_tbl dl dd.datetime input,
	#sec12 .form_tbl dl dd.datetime select{
		margin: 0 0 15px;
		width: 208px;
	}
	#sec12 .form_tbl dl dd.datetime .ib input,
	#sec12 .form_tbl dl dd.datetime .ib select{
		margin: 0;
	}
	#sec12 .form_tbl dl dd span.picker {
		padding: 0;
		margin: 0 0 7px;
	}
}
@media ( max-width: 960px ){
	#sec12 {
		padding: 11.333vw 0 10.667vw;
	}
	#sec12 .tab li a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 12.667vw;
		font-size: 2.933vw;
		line-height: 1.18;
		border-radius: 2vw 2vw 0 0;
	}
	#sec12 .tab li.tab1 a{
		background: #cc2e6a url(img/icon_mail.png) no-repeat 4.8vw center/5.067vw auto;
		padding: 0 0 0 4vw;
	}
	#sec12 .tab li.tab2 a{
		background: #2c5ea9 url(img/icon_book.png) no-repeat 5.333vw center/3.733vw auto;
		padding: 0 0 0 4vw;
	}
	#sec12 .tab li.tab3 a{
		background: #f08c3e url(img/icon_cal.png) no-repeat 3.467vw center/4.533vw auto;
		padding: 0 0 0 4vw;
	}
	#sec12 .tab_box{
		padding: 5.067vw 4vw;
		border-radius: 0 0 1.333vw 1.333vw;
	}
	#sec12 .form_tbl{
		padding: 2.933vw 2.667vw;
	}
	#sec12 .form_tbl dl{
		font-size: 2.8vw;
		border-bottom: 0.133vw dotted #ccc;
	}
	#sec12 .form_tbl dl:first-child{
		border-top: 0.133vw dotted #ccc;
	}
	#sec12 .form_tbl dl:last-of-type{
		margin: 0 0 25px;
	}
	#sec12 .form_tbl dl.checkbox {
		display: block;
	}
	#sec12 .form_tbl dl.checkbox dt .must,
	#sec12 .form_tbl dl.checkbox dt .any {
		top: 50%;
		transform: translateY(-50%);
	}
	#sec12 .form_tbl dl:not(.checkbox) {
		font-size: 4vw;
		padding: 3vw 2vw;
	}
	#sec12 .form_tbl dl dt{
		margin: 0 0 2vw;
	}
	#sec12 .form_tbl dl.checkbox {
		padding: 3.333vw 0 0
	}
	#sec12 .form_tbl dl.checkbox dt {
		display: block;
		font-size: 4vw;
		width: 100%;
		padding: 0 0 0 2vw;
	}
	#sec12 .form_tbl dl dt span{
		padding: 0.267vw 0.533vw;
		font-size: 2.4vw;
		border-radius: 0.533vw;
		right: initial;
		margin-left: 0.5em;
	}
	/* #sec12 .form_tbl dl dd{
		padding: 2.267vw 2.133vw 2.133vw 1.733vw;
	} */
	#sec12 .form_tbl dl.checkbox dd{
		padding: 1vw 0 3.733vw 2.667vw;
	}
	#sec12 .form_tbl dl.checkbox dd ul + ul {
		margin-left: 5.467vw;
	}
	#sec12 .form_tbl dl.checkbox dd ul li + li {
		margin-top: 2vw;
	}
	#sec12 .form_tbl dl dd.flex {
		display: flex;
	}
	#sec12 .form_tbl dl dd.flex .ib {
		width: 50%;
	}
	#sec12 .form_tbl dl dd span.item{
		padding: 0 0.667vw 0 0;
	}
	#sec12 .form_tbl dl:not(.checkbox) dd input,
	#sec12 .form_tbl dl dd select{
		height: 40px;
		border-radius: 0.667vw;
		border: 0.133vw solid #ccc;
		padding: 0 0.5em;
	}
	#sec12 .form_tbl dl dd select{
		width: 20vw;
	}
	#sec12 .form_tbl dl dd textarea{
		height: 23.733vw;
		border-radius: 0.667vw;
		border: 0.133vw solid #ccc;
		padding: 1em;
		box-sizing: border-box;
	}
	#sec12 .form_tbl dl dd.add .ib {
		margin: 0 0 1.333vw;
	}
	#sec12 .form_tbl dl dd.add input{
		width: 5.5em;
	}
	#sec12 .form_tbl dl dd.w1 input{
		width: 70%;
	}
	#sec12 .form_tbl dl dd.w2 input{
		width: 100%;
	}
	#sec12 .form_tbl dl dd.w3 input{
		width: 100%;
	}
	#sec12 .form_tbl dl dd.add .ib:last-child {
		margin: 0;
	}
	#sec12 .form_tbl dl dd.add .ib input{
		width: 100%;
		box-sizing: border-box;
		margin: 0;
	}	
	#sec12 .form_tbl .conf {
		font-size: 2.667vw;
		margin: 0 0 3.733vw;
	}
	#sec12 .form_tbl .conf a{
		font-size: 2.667vw;
	}
	#sec12 .form_tbl .form_btn input{
		font-size: 3.333vw;
		width: 58vw;
		height: 10.133vw;
		border-radius: 1.333vw;
	}
	#sec12 #form01 .form_tbl .form_btn input{
		border-top: 0.4vw solid #cc2e6a;
		border-left: 0.4vw solid #cc2e6a;
		border-right: 0.4vw solid #cc2e6a;
		border-bottom: 0.933vw solid #cc2e6a;
	}
	#sec12 #form02 .form_tbl .form_btn input{
		border-top: 0.4vw solid #2c5ea9;
		border-left: 0.4vw solid #2c5ea9;
		border-right: 0.4vw solid #2c5ea9;
		border-bottom: 0.933vw solid #2c5ea9;
	}
	#sec12 #form03 .form_tbl .form_btn input{
		border-top: 0.4vw solid #f08c3e;
		border-left: 0.4vw solid #f08c3e;
		border-right: 0.4vw solid #f08c3e;
		border-bottom: 0.933vw solid #f08c3e;
	}
	span.err,
	#sec12 .form_tbl dl dd span.err {
		font-size: 2.133vw;
		padding: 1vw 0.667vw 0.667vw;
	}
	#sec12 .form_tbl dl dd.datetime ul {
		margin: 0 0 1.333vw;
	}
	#sec12 .form_tbl dl dd.datetime select{
		margin: 0 0 2vw;
		width: 27.733vw;
	}
	#sec12 .form_tbl dl dd.datetime .ib {
		display: block;
	}
	#sec12 .form_tbl dl dd.datetime .ib + .ib {
		margin: 1.333vw 0 0;
	}
	#sec12 .form_tbl dl dd.datetime input,
	#sec12 .form_tbl dl dd.datetime .ib select {
		margin: 0 0 2vw;
		width: 32vw;
	}
	#sec12 .form_tbl dl dd.datetime .ib input,
	#sec12 .form_tbl dl dd.datetime .ib select{
		margin: 0;
	}
	#sec12 .form_tbl dl dd span.picker {
		padding: 0;
		margin: 0 0 0.933vw;
	}
}
	
/* = footer
-------------------------------------------------------------- */
#footer {
	background: #f1f6ff;
}
#footer .foot_link li{
	display: inline-block;
}
#footer .foot_link li a{
	color: #40409a;
}
#footer .foot_link li a:hover{
	text-decoration: underline;
}
#footer .copy{
	color: #40409a;
}
@media ( min-width: 961px ){
	#footer .foot_link{
		margin: 0 0 40px;
	}
	#footer .foot_link li{
		margin: 0 23px;
	}
	#footer .foot_link li{
		margin: 0 4.267vw;
	}
	#footer .foot_link li a{
		font-size: 14px;
	}
	#footer .copy{
		border-top: 1px solid #40409a;
		height: 70px;
		line-height: 70px;
		font-size: 12px;
	}
}
@media ( max-width: 960px ){
	#footer {
		padding: 0 0 26.133vw;
	}
	#footer .foot_link{
		margin: 0 0 7.067vw;
	}
	#footer .foot_link li{
		margin: 0 4.267vw;
	}
	#footer .foot_link li a{
		font-size: 2.667vw;
	}
	#footer .copy{
		border-top: 0.133vw solid #40409a;
		height: 14.267vw;
		line-height: 14.267vw;
		font-size: 2.267vw;
	}
}

/* = fixed_bnr
-------------------------------------------------------------- */
.fixed_bnr {
	position:fixed;
	z-index:998;
	background-color: rgba(000,000,000,0.7);
	box-sizing: border-box;
}
.fixed_bnr a {
	background: #fff;
}
@media ( min-width: 961px ){
	.fixed_bnr {
		right:0;
		top: 150px;
		padding: 10px 10px 15px;
		border-radius: 13px 0 0 13px;
	}
	.fixed_bnr ul li a {
		display: block;
		width: 212px;
		height: 60px;
		font-size: 18px;
		font-weight: bold;
		border-radius: 7px;
		line-height: 60px;
		box-sizing: border-box;
		margin: 0 0 7px;
		border-bottom: 3px solid #ccc;
		padding: 0 0 0 57px;
		text-align: left;
		transition: all .4s;
	}
	.fixed_bnr li.mail a{
		color: #cc2e6a;
		background: #fff url(img/icon_mail02.png) no-repeat 12px center;
	}
	.fixed_bnr li.catalog a{
		color: #00388d;
		background: #fff url(img/icon_book02.png) no-repeat 17px center;
	}
	.fixed_bnr li.reserve a{
		color: #f08c3e;
		background: #fff url(img/icon_cal02.png) no-repeat 14px center;
		margin: 0;
	}
	.fixed_bnr li a:hover{
		text-decoration: none;
	}
	.fixed_bnr li.mail a:hover{
		color: #fff;
		background: #cc2e6a url(img/icon_mail.png) no-repeat 12px center;
		border-bottom: 3px solid #820f3b;
	}
	.fixed_bnr li.catalog a:hover{
		color: #fff;
		background: #2c5ea9 url(img/icon_book.png) no-repeat 17px center;
		border-bottom: 3px solid #00388d;
	}
	.fixed_bnr li.reserve a:hover{
		color: #fff;
		background: #f08c3e url(img/icon_cal.png) no-repeat 14px center;
		border-bottom: 3px solid #d05b00;
	}
	.fixed_bnr .tel{
		color: #fff;
		font-weight: bold;
		font-size: 27px;
	}
	.fixed_bnr .tel .text{
		display: inline-block;
		font-size: 14px;
		font-weight: bold;
		background: url(img/icon_tel02.png) no-repeat 0 center;
		padding: 0 0 0 30px;
		margin: 0 0 6px;
	}
}
@media ( max-width: 960px ){
	.fixed_bnr {
		left:0;
		bottom: 0px;
		width: 100%;
		padding: 2.133vw 3.333vw;
	}
	.fixed_bnr .tel {
		margin: 0 0 2vw;
	}
	.fixed_bnr .tel a {
		display: flex;
		align-items: center;
		color: #000;
		font-weight: bold;
		height: 10.667vw;
		padding: 0.667vw 2.667vw 0;
		border-radius: 0.933vw;
		border-bottom: 0.8vw solid #ccc;
		box-sizing: border-box;
	}
	.fixed_bnr .tel a .num {
		font-size: 4.8vw;
		padding-left: 6.533vw;
		background: url(img/icon_tel.png)no-repeat left center/5.6vw auto;
	}
	.fixed_bnr .tel a .text {
		font-size: 2.267vw;
		line-height: 1.117;
		text-align: left;
		margin-left: 2vw;
	}
	.fixed_bnr .tel a .text span {
		display: block;
		text-indent: -0.5em;
	}
	.fixed_bnr ul {
		display: flex;
		gap: 0 2vw;
	}
	.fixed_bnr ul li {
		flex: 0 0 calc((100% - 4vw)/3);
	}
	.fixed_bnr ul li a {
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 2.533vw;
		font-weight: bold;
		height: 8.4vw;
		border-radius: 0.933vw;
		border-bottom: 0.8vw solid #ccc;
	}
	.fixed_bnr li.mail a{
		color: #cc2e6a;
		padding-left: 6.4vw;
		background: #fff url(img/icon_mail02.png) no-repeat 3.2vw center/5.467vw auto;
	}
	.fixed_bnr li.catalog a{
		color: #00388d;
		padding-left: 3.2vw;
		background: #fff url(img/icon_book02.png) no-repeat 5.6vw center/4vw auto;
	}
	.fixed_bnr li.reserve a{
		color: #f08c3e;
		padding-left: 6vw;
		background: #fff url(img/icon_cal02.png) no-repeat 2vw center/4.8vw auto;
		margin: 0;
	}
	.fixed_bnr li.reserve a .sptab {
		display: block;
		color: #000;
		font-size: 1.6vw;
		font-feature-settings: 'palt';
		margin-top: 0.533vw;
	}
}

/* thakspage */
#contents.thanks .form_tbl{
	padding: 80px 40px;
}
#contents.thanks .form_tbl p{
	font-size: 18px;
	line-height: 1.8;
	padding: 0 0 1.5em;
}
#contents.thanks #sec12 {
    padding: 100px 0;
}
#contents.thanks #sec12 .tab li.tab1 a {
	pointer-events: none;
}
@media ( max-width: 960px ){
	#contents.thanks .form_tbl{
		padding: 6vw 4vw;
	}
	#contents.thanks .form_tbl p{
		font-size: 3.8vw;
		line-height: 1.7;
		padding: 0 0 1.2em;
		text-align: left;
	}
	#contents.thanks #sec12 {
	    padding: 5vh 0;
	}
}