@charset "UTF-8";

/* reset -------- */
*, ::before, ::after {
	box-sizing: border-box;
	border-style: solid;
	border-width: 0
}
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent
}
body {
	margin: 0
}
main {
	display: block
}
p, table, blockquote, address, pre, iframe, form, figure, dl {
	margin: 0
}
h1, h2, h3, h4, h5, h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0
}
ul, ol {
	margin: 0;
	padding: 0;
	list-style: none
}
dt {
	font-weight: bold
}
dd {
	margin-left: 0
}
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
	border-top-width: 1px;
	margin: 0;
	clear: both;
	color: inherit
}
pre {
	font-family: monospace, monospace;
	font-size: inherit
}
address {
	font-style: inherit
}
a {
	background-color: transparent;
	text-decoration: none;
	color: inherit
}
abbr[title] {
	text-decoration: underline dotted
}
b, strong {
	font-weight: bolder
}
code, kbd, samp {
	font-family: monospace, monospace;
	font-size: inherit
}
small {
	font-size: 80%
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
}
sub {
	bottom: -0.25em
}
sup {
	top: -0.5em
}
svg, img, embed, object, iframe {
	vertical-align: bottom
}
button, input, optgroup, select, textarea {
	-webkit-appearance: none;
	appearance: none;
	vertical-align: middle;
	color: inherit;
	font: inherit;
	background: transparent;
	padding: 0;
	margin: 0;
	border-radius: 0;
	text-align: inherit;
	text-transform: inherit
}
button, [type="button"], [type="reset"], [type="submit"] {
	cursor: pointer
}
button:disabled, [type="button"]:disabled, [type="reset"]:disabled, [type="submit"]:disabled {
	cursor: default
}
:-moz-focusring {
	outline: auto
}
select:disabled {
	opacity: inherit
}
option {
	padding: 0
}
fieldset {
	margin: 0;
	padding: 0;
	min-width: 0
}
legend {
	padding: 0
}
progress {
	vertical-align: baseline
}
textarea {
	overflow: auto
}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
	height: auto
}
[type="search"] {
	outline-offset: -2px
}
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none
}
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit
}
[type="number"] {
	-moz-appearance: textfield
}
label[for] {
	cursor: pointer
}
details {
	display: block
}
summary {
	display: list-item
}
[contenteditable]:focus {
	outline: auto
}
table {
	border-color: inherit;
	border-collapse: collapse
}
caption {
	text-align: left
}
td, th {
	vertical-align: top;
	padding: 0
}
th {
	text-align: left;
	font-weight: bold
}


/* base -------- */
html {
  width: 100%;
  margin: 0 auto;
  font-size: 62.5%;
}

body {
  font-size: 3.2vw;
  line-height: 1.8;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "Meiryo", "メイリオ", Osaka, "MS PGothic", "ＭＳ Ｐゴシック", Helvetica, Arial, Sans-Serif;
  color: #333333;
  text-align: left;
  background-color: #FFF;
}

@media screen and (min-width: 768px), print {
  body {
    font-size: 1.45455vw;
  }
}

@media screen and (min-width: 1100px) {
  body {
    font-size: 16px;
  }
}

a {
  color: #333333;
  text-decoration: none;
  transition: all 0.2s;
}

@media only screen and (min-width: 768px) {
  a:hover {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
    opacity: 0.7;
  }
}
img{
	width: 100%;
	height: auto;
}
@media screen and (min-width: 768px), print {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}


/* layout -------- */
.container{
	width: 100%;
	padding-left: calc( 30 / 750 * 100vw );
	padding-right: calc( 30 / 750 * 100vw );
}
@media screen and (min-width: 768px), print {
	.container{
		max-width: 1020px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 30px;
		padding-right: 30px;
	}

}


/***** header *****/
.header_content{
	padding-top: calc( 20 / 750 * 100vw );
	padding-bottom: calc( 25 / 750 * 100vw );
}
.header_logo{
	width: calc( 148 / 750 * 100vw);
	margin-left: auto;
	margin-right: auto;
	margin-bottom: calc( 20 / 750 * 100vw );
}
.site_name{
	font-size: calc( 46 / 750 * 100vw );
	font-weight: 500;
	line-height: 1;
	text-align: center;
}
.header_access{
	background-color: #00a0e9;
	padding-top: calc( 15 / 750 * 100vw );
	padding-bottom: calc( 15 / 750 * 100vw );
}
.header_access p{
	font-size: calc( 28 / 750 * 100vw );
	font-weight: 500;
	line-height: 1;
	color: #FFFFFF;
	text-align: center;
}

@media screen and (min-width: 768px), print {
	.header_content{
		display: flex;
		align-items: center;
		justify-content: center;
		padding-top: calc( 20 / 1020 * 100vw );
		padding-bottom: calc( 20 / 1020 * 100vw );
	}
	.header_logo{
		width: calc( 148 / 1020 * 100vw);
		margin-left: 0;
		margin-right: calc( 30 / 1020 * 100vw);
		margin-bottom: 0;
	}
	.site_name{
		font-size: calc( 30 / 1020 * 100vw );
		text-align: left;
	}
	.header_access{
		padding-top: calc( 15 / 1020 * 100vw );
		padding-bottom: calc( 15 / 1020 * 100vw );
	}
	.header_access p{
		font-size: calc( 24 / 1020 * 100vw );
	}
}

@media screen and (min-width: 1020px), print {
	.header_content{
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.header_logo{
		width: 148px;
		margin-left: 0;
		margin-right: 30px;
		margin-bottom: 0;
	}
	.site_name{
		font-size: 30px;
	}
	.header_access{
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.header_access p{
		font-size: 24px;
	}
}


/***** mv *****/
#mv{
	background: url("../images/mv_bg_sp.jpg") center center no-repeat;
	background-size: cover;
}
.mv_content{
	margin-left: calc( -30 / 750 * 100vw );
	margin-right: calc( -30 / 750 * 100vw );
}
.mv_catch{
	padding-top: calc( 18 / 750 * 100vw );
	padding-bottom: calc( 8 / 750 * 100vw );
}
.mv_list{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: calc( 15 / 750 * 100vw );
	margin-left: calc( 30 / 750 * 100vw );
	margin-right: calc( 30 / 750 * 100vw );
}
.mv_list li{
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: calc( 15 / 750 * 100vw );
	font-size: calc( 38 / 750 * 100vw );
	font-weight: 500;
	color: #FFFFFF;
	height: calc( 80 / 750 * 100vw );
}
.mv_list li:nth-child(1){
	background-color: #f8942b;
}
.mv_list li:nth-child(2){
	background-color: #fd8d99;
}
.mv_list li:nth-child(3){
	background-color: #2ba7c0;
}
.mv_list li:nth-child(4){
	background-color: #67be4f;
}
.mv_list li:nth-child(5){
	background-color: #3d66c5;
}
.mv_list li:nth-child(6){
	background-color: #c273c2;
}

@media screen and (min-width: 768px), print {
	#mv{
		background: url("../images/mv_bg.jpg") center center no-repeat;
		background-size: cover;
	}
	.mv_content{
		margin-left: 0;
		margin-right: 0;
		position: relative
	}
	.mv_catch{
		padding-top: 0;
		padding-bottom: calc( 10 / 1020 * 100vw );
	}
	.mv_list{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
		grid-gap: calc( 10 / 1020 * 100vw );
		margin-left: 0;
		margin-right: 0;
	}
	.mv_list li{
		border-radius: calc( 15 / 1020 * 100vw );
		font-size: calc( 24 / 1020 * 100vw );
		height: calc( 50 / 1020 * 100vw );
	}
	.mv_text{
		position: absolute;
		left: 0;
		right: 0;
		bottom: calc( 50 / 1020 * 100vw );
		padding-left: calc( 50 / 1020 * 100vw );
		padding-right: calc( 50 / 1020 * 100vw );
	}
}

@media screen and (min-width: 1020px), print {
	.mv_catch{
		padding-bottom: 10px;
	}
	.mv_list{
		grid-gap: 10px;
	}
	.mv_list li{
		border-radius: 15px;
		font-size: 24px;
		height: 50px;
	}
	.mv_text{
		bottom: 50px;
		padding-left: 50px;
		padding-right: 50px;
	}
}


/**** problem *****/
#problem{
	background-color: #00a0e9;
	padding-top: calc( 60 / 750 * 100vw );
}
.problem_subtitle{
	background-color: #00a0e9;
	font-size: calc( 42 / 750 * 100vw );
	font-weight: 500;
	color: #FFFFFF;
	text-align: center;
	margin-bottom: calc( 15 / 750 * 100vw );
}
.problem_content{
	display: flex;
	flex-direction: column;
	grid-gap: calc( 55 / 750 * 100vw );
}
.problem_list{
	background-color: #FFFFFF;
	border-radius: calc( 15 / 750 * 100vw );
	padding: calc( 20 / 750 * 100vw );
}
.problem_list li{
	border-bottom: 1px solid #dedede;
	font-size: calc( 32 / 750 * 100vw );
	font-weight: 500;
	line-height: 1.2;
	padding-top: calc( 20 / 750 * 100vw );
	padding-bottom: calc( 20 / 750 * 100vw );
	position: relative;
	padding-left: 1.7em;
}
.problem_list li:last-child{
	border-bottom: none;
}
.problem_list li:before{
	content: "";
	display: inline-block;
	background: url("../images/problem_list_icon.svg") left top no-repeat;
	background-size: contain;
	width: 1.2em;
	height: 1.2em;
	vertical-align: middle;
	position: absolute;
	left: 0em;
	top: calc( 20 / 750 * 100vw );
}
.problem_img01{
		margin-left: calc( -30 / 750 * 100vw );
		margin-right: calc( -30 / 750 * 100vw );
}

@media screen and (min-width: 768px), print {
	#problem{
		padding-top: calc( 50 / 1020 * 100vw );
	}
	.problem_subtitle{
		font-size: calc( 36 / 1020 * 100vw );
		margin-bottom: calc( 20 / 1020 * 100vw );
	}
	.problem_content{
		display: flex;
		flex-direction: row;
		grid-gap: calc( 30 / 1020 * 100vw );
	}
	.problem_img01{
		margin-left: 0;
		margin-right: 0;
	}
	.problem_list{
		border-radius: calc( 15 / 1020 * 100vw );
		padding: calc( 15 / 1020 * 100vw );
		flex: 1;
	}
	.problem_list li{
		font-size: calc( 21 / 1020 * 100vw );
		padding-top: calc( 15 / 1020 * 100vw );
		padding-bottom: calc( 15 / 1020 * 100vw );
	}
	.problem_list li:before{
		top: calc( 15 / 1020 * 100vw );
	}
	.problem_img01{
		margin-left: 0;
		margin-right: 0;
		flex: 1;
		border-radius: calc( 15 / 1020 * 100vw );
		overflow: hidden;
	}
	.problem_img01 img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

@media screen and (min-width: 1020px), print {
	#problem{
		padding-top: 50px;
	}
	.problem_subtitle{
		font-size: 36px;
		margin-bottom: 20px;
	}
	.problem_content{
		grid-gap: 30px;
	}
	.problem_list{
		border-radius: 15px;
		padding: 15px;
	}
	.problem_list li{
		font-size: 21px;
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.problem_list li:before{
		top: 15px;
	}
	.problem_img01{
		border-radius: 15px;
	}
}


/***** solution *****/
#solution{
	background-color: #00a0e9;
}
.solution_subtitle{
	text-align: center;
	padding-top: calc( 50 / 750 * 100vw );
	padding-bottom: calc( 50 / 750 * 100vw );
}
.solution_subtitle .text01{
	display: block;
	font-size: calc( 32 / 750 * 100vw );
	font-weight: 500;
	line-height: calc( 50 / 32 );
	color: #FFFFFF;
	margin-bottom: calc( 15 / 750 * 100vw );
}
.solution_subtitle .text02{
	display: block;
	font-size: calc( 60 / 750 * 100vw );
	font-weight: 500;
	line-height: calc( 75 / 60 );
	color: #feef00;
}
.solution_img01{
	margin-left: calc( -30 / 750 * 100vw );
	margin-right: calc( -30 / 750 * 100vw );
}

@media screen and (min-width: 768px), print {
	.solution_subtitle{
		padding-top: calc( 50 / 1020 * 100vw );
		padding-bottom: calc( 50 / 1020 * 100vw );
	}
	.solution_subtitle .text01{
		display: block;
		font-size: calc( 32 / 1020 * 100vw );
		line-height: calc( 48 / 32 );
		margin-bottom: calc( 15 / 1020 * 100vw );
	}
	.solution_subtitle .text02{
		display: block;
		font-size: calc( 48 / 1020 * 100vw );
		line-height: calc( 60 / 48 );
	}
	.solution_img01{
		width: 100vw;
		margin-left: calc( (100vw - 100%) / -2 );
		margin-right: calc( (100vw - 100%) / -2 );
	}
}

@media screen and (min-width: 1020px), print {
	.solution_subtitle{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.solution_subtitle .text01{
		font-size: 32px;
		margin-bottom: 15px;
	}
	.solution_subtitle .text02{
		font-size: 48px;
	}
}


/**** btn_list *****/
.cta{
	background-color: #333333;
	padding-top: calc( 30 / 750 * 100vw );
	padding-bottom: calc( 30 / 750 * 100vw );
}
.btn_list{
	display: flex;
	grid-gap: calc( 15 / 750 * 100vw );
}
.btn_list li{
	flex: 1;
}
.btn_list li a{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: calc( 140 / 750 * 100vw );
	border-radius: calc( 15 / 750 * 100vw );
	font-size: calc( 38 / 750 * 100vw );
	font-weight: 500;
	line-height: calc( 46 / 38 );
	text-align: center;
	box-shadow: 1px 1px 1px rgba(255,255,255,0.5) inset,
		-1px -1px 1px rgba(0,0,0,0.5) inset;
}
.btn_list li a .small{
	font-size: calc( 30 / 750 * 100vw );
}
.btn_list li a.tel{
	color: #FFFFFF;
	background: rgb(218,79,96);
	background: -moz-linear-gradient(45deg, rgba(218,79,96,1) 0%, rgba(248,124,139,1) 75%, rgba(248,124,139,1) 100%);
	background: -webkit-linear-gradient(45deg, rgba(218,79,96,1) 0%, rgba(248,124,139,1) 75%, rgba(248,124,139,1) 100%);
	background: linear-gradient(45deg, rgba(218,79,96,1) 0%, rgba(248,124,139,1) 75%, rgba(248,124,139,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#da4f60",endColorstr="#f87c8b",GradientType=1);
}
.btn_list li a.line{
	color: #FFFFFF;
	background: rgb(5,159,68);
	background: -moz-linear-gradient(45deg, rgba(5,159,68,1) 0%, rgba(6,199,85,1) 75%, rgba(6,199,85,1) 100%);
	background: -webkit-linear-gradient(45deg, rgba(5,159,68,1) 0%, rgba(6,199,85,1) 75%, rgba(6,199,85,1) 100%);
	background: linear-gradient(45deg, rgba(5,159,68,1) 0%, rgba(6,199,85,1) 75%, rgba(6,199,85,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#059f44",endColorstr="#06c755",GradientType=1);
}
.btn_list li a.web{
	color: #FFFFFF;
	background: rgb(211,109,0);
	background: -moz-linear-gradient(45deg, rgba(211,109,0,1) 0%, rgba(249,149,43,1) 75%, rgba(249,149,43,1) 100%);
	background: -webkit-linear-gradient(45deg, rgba(211,109,0,1) 0%, rgba(249,149,43,1) 75%, rgba(249,149,43,1) 100%);
	background: linear-gradient(45deg, rgba(211,109,0,1) 0%, rgba(249,149,43,1) 75%, rgba(249,149,43,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#d36d00",endColorstr="#f9952b",GradientType=1);
}

@media screen and (min-width: 768px), print {
	.cta{
		padding-top: calc( 40 / 1020 * 100vw );
		padding-bottom: calc( 40 / 1020 * 100vw );
	}
	.btn_list{
		grid-gap: calc( 20 / 1020 * 100vw );
	}
	.btn_list li a{
		height: calc( 110 / 1020 * 100vw );
		border-radius: calc( 15 / 1020 * 100vw );
		font-size: calc( 30 / 1020 * 100vw );
	}
	.btn_list li a .small{
		font-size: inherit;
	}
	.btn_list li a .number{
		font-size: calc( 36 / 1020 * 100vw );
	}

}

@media screen and (min-width: 1020px), print {
	.cta{
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.btn_list{
		grid-gap: 20px;
	}
	.btn_list li a{
		height: 110px;
		border-radius: 15px;
		font-size: 30px;
	}
	.btn_list li a .small{
		font-size: 30px;
	}
	.btn_list li a .number{
		font-size: 36px;
	}
}


/***** reason *****/
.reason_subtitle_block{
	position: relative;
}
.reason_subtitle_bg{
	margin-left: calc( -30 / 750 * 100vw );
	margin-right: calc( -30 / 750 * 100vw );
}
.reason_subtitle{
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	transform: translate3d(0,-50%,0);
	font-size: calc( 48 / 750 * 100vw );
	font-weight: 500;
	line-height: calc( 70 / 48 );
	text-align: center;
	color: #FFFFFF;
}
.reason_block{
	padding-top: calc( 50 / 750 * 100vw );
	display: flex;
	flex-direction: column;
}
.reason_balloon{
	position: relative;
	background-color: #00a0e9;
	border-radius: calc( 15 / 750 * 100vw );
	padding: calc( 40 / 750 * 100vw );
	font-size: calc( 40 / 750 * 100vw );
	font-weight: 500;
	line-height: calc( 55 / 40 );
	text-align: center;
	color: #FFFFFF;
	margin-bottom: calc( 60 / 750 * 100vw );
}
.reason_balloon:after{
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: calc( 30 / 750 * 100vw ) calc( 30 / 750 * 100vw ) 0 calc( 30 / 750 * 100vw );
	border-color: #009fe9 transparent transparent transparent;
	position: absolute;
	left: 50%;
	bottom: 1px;
	transform: translate3d(-50%,100%,0);
}
.reason_block p{
	font-size: calc( 28 / 750 * 100vw );
	line-height: calc( 48 / 28 );
	margin-bottom: 1.5em;
}

.reason_block p .large{
	font-size: calc( 32 / 750 * 100vw );
}
.color_blue{
	color: #00a0e9 !important;
}
.font_bold{
	font-weight: 500 !important;
}
.reason_img{
	margin-left: calc( -30 / 750 * 100vw );
	margin-right: calc( -30 / 750 * 100vw );
	order: 1;
}

@media screen and (min-width: 768px), print {
	#reason{
		padding-bottom: calc( 60 / 1020 * 100vw );
	}
	.reason_subtitle_bg{
		width: 100vw;
		margin-left: calc( (100vw - 100%) / -2 );
		margin-right: calc( (100vw - 100%) / -2 );
	}
	.reason_subtitle{
		font-size: calc( 36 / 1020 * 100vw );
		line-height: calc( 55 / 36 );
	}
	.reason_block{
		padding-top: calc( 60 / 1020 * 100vw );
		display: block;
		overflow: hidden;
	}
	.reason_balloon{
		border-radius: calc( 15 / 1020 * 100vw );
		padding: calc( 20 / 1020 * 100vw );
		font-size: calc( 24 / 1020 * 100vw );
		line-height: calc( 36 / 24 );
		margin-bottom: calc( 40 / 1020 * 100vw );
	}
	.reason_balloon:after{
		border-width: calc( 20 / 1020 * 100vw ) calc( 20 / 1020 * 100vw ) 0 calc( 20 / 1020 * 100vw );
	}
	.reason_block p{
		font-size: calc( 18 / 1020 * 100vw );
		line-height: calc( 30 / 18 );
		margin-bottom: 1.5em;
	}
	.reason_block p:last-child{
		margin-bottom: 0;
	}
	.reason_block p .large{
		font-size: inherit;
	}
	.reason_img{
		margin-left: 0;
		margin-right: 0;
		order: unset;
		float: right;
		width: calc( 50% - ( 20 / 1020 * 100vw ) );
		margin-left: calc( 40 / 1020 * 100vw );
	}
	.reason_balloon_wrap{
		overflow: hidden;
	}

}

@media screen and (min-width: 1020px), print {
	#reason{
		padding-bottom: 60px;
	}
	.reason_subtitle{
		font-size: 36px;
	}
	.reason_block{
		padding-top: 60px;
	}
	.reason_balloon{
		border-radius: 15px;
		padding: 20px;
		font-size: 24px;
		margin-bottom: 40px;
	}
	.reason_balloon:after{
		border-width: 20px 20px 0 20px;
	}
	.reason_block p{
		font-size: 18px;
	}
	.reason_img{
		width: calc( 50% - 20px );
		margin-left: 40px;
	}
}



/**** voice *****/
#voice{
	background-color: #00a0e9;
	padding-top: calc( 60 / 750 * 100vw );
	padding-bottom: calc( 80 / 750 * 100vw );
}
.voice_subtitle{
	color: #FFFFFF;
	text-align: center;
	margin-bottom: calc( 40 / 750 * 100vw );
}
.voice_subtitle .en{
	display: block;
	font-size: calc( 24 / 750 * 100vw );
	line-height: 1;
	letter-spacing: 0.1em;
	margin-bottom: calc( 15 / 750 * 100vw );
}
.voice_subtitle .ja{
	display: block;
	font-size: calc( 55 / 750 * 100vw );
	font-weight: 500;
	line-height: 1;
}
.voice_box{
	background-color: #FFFFFF;
	border-radius: calc( 20 / 750 * 100vw );
	padding: calc( 30 / 750 * 100vw );
}
.voice_box + .voice_box{
	margin-top: calc( 30 / 750 * 100vw );
}
.voice_icon{
	width: calc( 200 / 750 * 100vw );
	margin-left: auto;
	margin-right: auto;
}
.voice_name{
	font-size: calc( 24 / 750 * 100vw );
	text-align: center;
	margin-bottom: calc( 10 / 750 * 100vw );
}
.voice_box p{
	font-size: calc( 28 / 750 * 100vw );
	line-height: calc( 48 / 28 );
}
.color_pink{
	color: #f87c8b;
}

@media screen and (min-width: 768px), print {
	#voice{
		padding-top: calc( 70 / 1020 * 100vw );
		padding-bottom: calc( 90 / 1020 * 100vw );
	}
	.voice_subtitle{
		margin-bottom: calc( 30 / 1020 * 100vw );
	}
	.voice_subtitle .en{
		font-size: calc( 18 / 1020 * 100vw );
		margin-bottom: calc( 15 / 1020 * 100vw );
	}
	.voice_subtitle .ja{
		font-size: calc( 36 / 1020 * 100vw );
	}
	.voice_box{
		border-radius: calc( 20 / 1020 * 100vw );
		padding: calc( 25 / 1020 * 100vw ) calc( 40 / 1020 * 100vw );
		display: flex;
		align-items: center;
		grid-gap: calc( 30 / 1020 * 100vw );
	}
	.voice_box + .voice_box{
		margin-top: calc( 20 / 1020 * 100vw );
	}
	.voice_box .thumb_wrap{
		width: calc( 130 / 1020 * 100vw );
	}
	.voice_icon{
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.voice_name{
		font-size: calc( 14 / 1020 * 100vw );
		margin-bottom: 0;
	}
	.voice_box .text_wrap{
		flex: 1;
	}
	.voice_box p{
		font-size: calc( 18 / 1020 * 100vw );
		line-height: calc( 30 / 18 );
	}
}

@media screen and (min-width: 1020px), print {
	#voice{
		padding-top: 70px;
		padding-bottom: 90px;
	}
	.voice_subtitle{
		margin-bottom: 30px;
	}
	.voice_subtitle .en{
		font-size: 18px;
		margin-bottom: 15px;
	}
	.voice_subtitle .ja{
		font-size: 36px;
	}
	.voice_box{
		border-radius: 20px;
		padding: 25px 40px;
		grid-gap: 30px;
	}
	.voice_box + .voice_box{
		margin-top: 20px;
	}
	.voice_box .thumb_wrap{
		width: 130px;
	}
	.voice_name{
		font-size: 14px;
	}
	.voice_box p{
		font-size: 18px;
	}
}


/***** access *****/
.access_subtitle_block{
	position: relative;
	margin-left: calc( -30 / 750 * 100vw );
	margin-right: calc( -30 / 750 * 100vw );
}
.access_subtitle_bg{
}
.access_subtitle_wrap{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding-top: calc( 50 / 750 * 100vw );
	padding-bottom: calc( 50 / 750 * 100vw );
	background-color: rgba(0,0,0,0.40);
}
.access_subtitle{
	font-size: calc( 48 / 750 * 100vw );
	font-weight: 500;
	line-height: calc( 70 / 48 );
	text-align: center;
	color: #FFFFFF;
	margin-bottom: calc( 25 / 750 * 100vw );
}
.access_text{
	text-align: center;
}
.access_text .label{
	display: inline-flex;
	align-items: center;
	font-size: calc( 34 / 750 * 100vw );
	font-weight: 500;
	line-height: calc( 70 / 48 );
	text-align: center;
	color: #FFFFFF;
	background-color: #00a0e9;
	height: calc( 70 / 750 * 100vw );
	border-radius: calc( 70 / 750 * 100vw );
	padding-left: calc( 50 / 750 * 100vw );
	padding-right: calc( 50 / 750 * 100vw );
}
.access_content{
	padding-top: calc( 40 / 750 * 100vw );
	padding-bottom: calc( 40 / 750 * 100vw );
}
.access_content p{
	font-size: calc( 28 / 750 * 100vw );
	line-height: calc( 48 / 28 );
	margin-bottom: 1.5em;
}
.gmap{
	margin-bottom: calc( 50 / 750 * 100vw );
}
.gmap iframe{
	width: 100%;
	height: calc( 518 / 750 * 100vw );
}

@media screen and (min-width: 768px), print {
	.access_subtitle_block{
		width: 100vw;
		margin-left: calc( (100vw - 100%) / -2 );
		margin-right: calc( (100vw - 100%) / -2 );
	}
	.access_subtitle_wrap{
		padding-top: calc( 30 / 1020 * 100vw );
		padding-bottom: calc( 30 / 1020 * 100vw );
	}
	.access_subtitle{
		font-size: calc( 36 / 1020 * 100vw );
		font-weight: 500;
		line-height: 1;
		margin-bottom: calc( 25 / 1020 * 100vw );
	}
	.access_text .label{
		font-size: calc( 24 / 1020 * 100vw );
		line-height: calc( 60 / 24 );
		height: calc( 50 / 1020 * 100vw );
		border-radius: calc( 50 / 1020 * 100vw );
		padding-left: calc( 50 / 1020 * 100vw );
		padding-right: calc( 50 / 1020 * 100vw );
	}
	.access_content{
		padding-top: calc( 50 / 1020 * 100vw );
		padding-bottom: calc( 50 / 1020 * 100vw );
	}
	.access_content p{
		font-size: calc( 18 / 1020 * 100vw );
		line-height: calc( 30 / 18 );
		margin-bottom: 1.5em;
	}
	.gmap{
		margin-bottom: calc( 40 / 1020 * 100vw );
	}
	.gmap iframe{
		width: 100%;
		height: calc( 568 / 1020 * 100vw );
	}
}

@media screen and (min-width: 1020px), print {
	.access_subtitle_wrap{
		padding-top: 30px;
		padding-bottom: 30px;
	}
	.access_subtitle{
		font-size: 36px;
		margin-bottom: 25px;
	}
	.access_text .label{
		font-size: 24px;
		height: 50px;
		border-radius: 50px;
		padding-left: 50px;
		padding-right: 50px;
	}
	.access_content{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.access_content p{
		font-size: 18px;
	}
	.gmap{
		margin-bottom: 40px;
	}
	.gmap iframe{
		height: 568px;
	}
}


/***** footer *****/
.footer_content{
	display: flex;
	height: calc( 120 / 750 * 100vw );
	background-color: #00a0e9;
}
.copyright{
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: calc( 28 / 750 * 100vw );
	color: #FFFFFF;
}
.totop{
	width: calc( 120 / 750 * 100vw );
}
.totop a{
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #006b9c;
	width: 100%;
	height: 100%;
}
.totop a img{
	width: calc( 30 / 750 * 100vw );
}

@media screen and (min-width: 768px), print {
	.footer_content{
		height: calc( 80 / 1020 * 100vw );
	}
	.copyright{
		font-size: calc( 18 / 1020 * 100vw );
	}
	.totop{
		width: calc( 80 / 1020 * 100vw );
	}

	.totop a img{
		width: calc( 20 / 1020 * 100vw );
	}
}

@media screen and (min-width: 1020px), print {
	.footer_content{
		height: 80px;
	}
	.copyright{
		font-size: 18px;
	}
	.totop{
		width: 80px;
	}

	.totop a img{
		width: 20px;
	}
}


/**** 追従 *****/
.floating-banner {
	position: fixed;
	z-index: 99999;
	left: 0px;
	right: 0px;
	bottom: 0%;
}
.floating-banner{
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.6s ease;
}
body.loaded .floating-banner.active{
	opacity: 1;
	visibility: visible;
}

/**** 追加 *****/
.mb50 {margin-bottom: 50px;}
.info img {width: 75%;}
p.info {text-align: center;}
@media screen and (max-width: 768px), print {
	.info img {width: 100%;}
	p.info {text-align: center;}
}
