@charset "utf-8";

/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

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, font, 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 {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
body {
	line-height: 1;
	overflow-x: hidden;
}
body {
 -webkit-text-size-adjust: 100%;
}
h1, h2, h3, h4, h5, h6 {
	clear: both;
	font-weight: bold;
	margin-bottom: 1rem;
}
ol, ul {
	list-style: none;
}
blockquote {
	quotes: none;
}
blockquote:before, blockquote:after {
	content: '';
	content: none;
}
del {
	text-decoration: line-through;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
a img {
	border: none;
}

#wrapper {
	overflow: hidden;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

/* =Fonts
-------------------------------------------------------------- */
input[type="submit"] {
	font-family: 'Noto Sans JP', sans-serif;
}
pre {
	font-family: 'Noto Sans JP', sans-serif;
}
code {
	font-family: 'Noto Sans JP', sans-serif;
}

/* =Mobile Safari ( iPad, iPhone and iPod Touch )
-------------------------------------------------------------- */

pre {
	-webkit-text-size-adjust: 140%;
}
code {
	-webkit-text-size-adjust: 160%;
}
#site-description {
	-webkit-text-size-adjust: none;
}

/* --------------------------------------------------------------
カスタマイズ
-------------------------------------------------------------- */
/* 設定
-------------------------------------------------------------- */
body {
	line-height: 1.4;
	background: #fff;
}
table {
	font-family: 'Noto Sans JP', sans-serif;
}
p {
	margin: 0 0 1rem;
	font-size: 1rem;
	line-height: 1.2rem;
}
img {
	vertical-align: bottom;
	max-width: 100%;
}

/* クラス
-------------------------------------------------------------- */
/* clearfix */
.clearfix:before,
.clearfix:after {
	content:"";
	display:table;
	overflow:hidden;
	font-size:0.1em;
	line-height:0;
}
.clearfix:after {
	clear:both;
}
.clearfix {
	zoom:1;
}

/* font color */
.pink {
	color: #cf11b2 !important;
}
.red {
	color: #ff004e !important;
}
.blue {
	color: #26a5cc !important;
}

/* =Global Elements
-------------------------------------------------------------- */
body,
input,
textarea {
	color: #111;
	font-size: 15px;
	line-height: 1.6;
	width: 100%;
}
hr {
	background-color: #e7e7e7;
	border: 0;
	clear: both;
	height: 1px;
	margin-bottom: 18px;
}

/* Text elements */
ul {
	list-style: square;
	margin: 0 0 15px 15px;
}
ol {
	list-style: decimal;
	margin: 0 0 15px 15px;
}
ol ol {
	list-style: upper-alpha;
}
ol ol ol {
	list-style: lower-roman;
}
ol ol ol ol {
	list-style: lower-alpha;
}
ul ul,
ol ol,
ul ol,
ol ul {
	margin-bottom: 0;
}
dl {
	margin: 0 0 24px 0;
}
dt {
	font-weight: bold;
		margin-bottom: 18px;
}
dd {
	margin-bottom: 18px;
}
strong {
font-weight: 600;
    color: #371f11;
    font-size: 120%;
}
cite,
em,
i {
	font-style: italic;
}
big {
	font-size: 131.25%;
}
ins {
	background: #ffc;
	text-decoration: none;
}
blockquote {
	font-style: italic;
	padding: 0 3em;
}
blockquote cite,
blockquote em,
blockquote i {
	font-style: normal;
}
pre {
	background: #f7f7f7;
	color: #222;
	line-height: 18px;
	margin-bottom: 18px;
	overflow: auto;
	padding: 1.5em;
}
abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
sup,
sub {
	height: 0;
	line-height: 1;
	position: relative;
	vertical-align: baseline;
}
sup {
	bottom: 1ex;
}
sub {
	top: .5ex;
}
small {
	font-size: smaller;
}
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="number"],
textarea {
	background: #f9f9f9;
	border: 1px solid #ccc;
	box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
	-moz-box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
	-webkit-box-shadow: inset 1px 1px 1px rgba(0,0,0,0.1);
	padding: 2px;
}

a {
transition: all .3s;
}
a:link,
a:visited {transition: all .3s;color: unset;text-decoration:none;}
a:active,
a:hover {
transition: all .3s;
cursor: pointer;
opacity: 0.7;
}

/* =Content
-------------------------------------------------------------- */
#main {
	clear: both;
	padding: 0;
	width: 100%;
}

#main:before,
#main:after {
	content:"";
	display:table;
}
#main:after {
	clear:both;
}
#main {
	zoom:1;
}

.mb0{
  margin-bottom:0px !important;
}
.mb16{
  margin-bottom:16px !important;
}
.mb24{
  margin-bottom:24px !important;
}
.mb32{
  margin-bottom:32px !important;
}
.mb40{
  margin-bottom:40px !important;
}
.mt16{
  margin-top:16px !important;
}
.mt24{
  margin-top:24px !important;
}
.mt40{
  margin-top:40px !important;
}

body {
	color: #333333;
	font-family: "LINE Seed JP", sans-serif;
}
#container {
	overflow: hidden;
}
html{
    scroll-behavior: smooth;
}
section {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	box-sizing: border-box;
}
.center {
	margin:0 auto 0;
	text-align:center;
}
.right {
	text-align: right;
	margin-left: auto;
}
.flr {
	display: flow-root;
}
h1 {
	color:#26a5cc;
	font-size: 2rem;
	font-weight: 600;
	font-family: "LINE Seed JP", sans-serif;
	line-height: 2.5rem;
}
h2 {
	font-size: 1.6rem;
}
h3 {
	font-size: 24px;
	line-height: 26px;
	color: #26a5cc;
}
h4 {
	font-size: 1rem;
	letter-spacing: 1px;
	line-height: 1.1rem;
}
h5 {
	font-size: 1.2rem;
}

/* flex */
.flex_colomn_l {
	display: flex;
	flex-direction: column;
}
.flex_between {
	display:flex;
	align-items:center;
	justify-content: space-between;
}
.flex_wrap {
	flex-wrap: wrap;
}
.flex2,
.flex_3,
.flex_7 {
	padding: .5rem;
	box-sizing: border-box;
}
@media screen and (min-width:800px) {
	.flex_top {
		display: flex;
		align-items:flex-start;
	}
	.flex_center {
		display:flex;
		align-items:center;
	}
	.flex2 {
		width: 50%;
	}
	.flex_3 {
		width: 30%;
	}
	.flex_7 {
		width: 70%;
	}
}
@media screen and (max-width: 800px) {
	.flex_reverse {
		display: flex;
		flex-direction: column-reverse;
	}
	.flex4 {
		width: 50%;
	}
}

/* fade in */
.inview.fadeup {
	opacity: 0;
	transition-duration: .5s;
	transform: translateY(10px);
	transition-delay: .3s;
}
.inview.fadeup.active {
	opacity: 1;
	transform: translateY(0px);
}
.inview.fadedown {
	opacity: 0;
	transition-duration: .5s;
	transform: translateY(-10px);
	transition-delay: .3s;
}
.inview.fadedown.active {
	opacity: 1;
	transform: translateY(0px);
}
.inview.fadeleft {
	opacity: 0;
	transition-duration: .5s;
	transform: translateX(-10px);
	transition-delay: .3s;
}
.inview.fadeleft.active {
	opacity: 1;
	transform: translateX(0px);
}
.inview.faderight {
	opacity: 0;
	transition-duration: .5s;
	transform: translateX(10px);
	transition-delay: .3s;
}
.inview.faderight.active {
	opacity: 1;
	transform: translateX(0px);
}

/* header */
#header {
	position: fixed;
	top:0;
	width: 100%;
	padding: 0 .5rem;
	box-sizing: border-box;
	z-index: 999999;
}
#header section {
	background-color: #ffffff;
	padding: .5rem 1.5rem;
	border-radius: 0 0 2rem 2rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header_top a .fa {
	margin:0 .3rem;
}
@media screen and (min-width:800px) {
.header_menu_sp {
	display: none;
}
.header_menu_pc {
	display: flex;
	flex-direction: column;
}
.header_top {
	font-size: 1rem;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
.header_top a {
	margin: 0 .5rem;
}
.header_top .header_tel a {
	color: #feb10d;
	font-size: 1.4rem;
}
.header_top .header_contact a {
	color: #ffffff;
	background-color: #feb10d;
	padding: .5rem 1rem;
	border-radius: 1rem;
}
.header_top .header_site a {
	color: #ffffff;
	background-color: #26a5cc;
	padding: .5rem 1rem;
	border-radius: 1rem;
}
ul.header_bottom {
	list-style: none;
	margin: .5rem 0 0;
	display: flex;
}
ul.header_bottom li {
	margin: 0 .8rem;
}
}
@media screen and (max-width: 800px) {
#header .header_logo img {
	max-height: 42px;
	width: auto;
}
.header_menu_pc {
	display: none;
}
}

/* sp menu */
.hamburger {
  display : block;
  position: relative;
  z-index : 3;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : rgba(38,165,204,0.9);
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}
.hamburger.active span:nth-child(1) {
  top : 16px;
  left: 6px;
  background :#fff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}
.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 16px;
  background :#fff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}
nav.globalMenuSp {
  position: fixed;
  z-index : 2;
  top  : 0;
  left : 0;
  color: #fff;
  background: rgba(38,165,204,0.9);
  text-align: center;
  width: 100%;
  transform: translateX(100%);
  transition: all 0.6s;
}
nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 48px 0;
  width: 100%;
  box-sizing: border-box;
}
nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
  margin: 1.5rem auto;
  font-size:1.1rem;
  letter-spacing: 1px;
}
nav.globalMenuSp ul li .fa {
	margin: 0 .5rem;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#ddd;
}
nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration :none;
}
nav.globalMenuSp.active {
  opacity: 100;
  display: block;
  transform: translateX(0%);
}

/* mv */
.mv {
	width: 100%;
	position: relative;
}
.mv section {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.mv video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mv section .mv_copy ul {
	list-style: none;
	margin: 0;
	font-size: 1.1rem;
	font-weight: 600;
}
.mv section .mv_copy ul li {
	margin: 1rem 0;
	color: #ffffff;
	display:flex;
	align-items: center;
	box-sizing: border-box;
}
.mv section .mv_copy ul li p {
	margin: 0;
	font-size: 1.1rem;
	line-height: 1.2rem;
}
.mv section .mv_copy ul li span {
	font-size:80%;
}
.mv section .mv_copy ul li .fa {
	margin-right:.5rem;
}
img.mv_btm {
	position: absolute;
	bottom: -1px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}
@media screen and (min-width:800px) {
.mv {
	height: 90vh;
}
.mv section {
	height: 70vh;
}
.mv section .mv_copy {
	position: absolute;
	top: 54%;
	left: 1rem;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}
.mv section .mv_logo {
	margin: 0 auto 1rem;
	display: flex;
	justify-content: center;
	max-width: 200px;
}
.mv section .mv_copy ul li {
	padding: .5rem 1rem;
	border-radius: 2rem;
	background-color: #feb10d;
}
}
@media screen and (max-width: 800px) {
.mv {
	height: 100vh;
}
.mv section {
	height: 100vh;
}
.mv section .mv_logo {
	position: absolute;
	top: 6rem;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	max-width:70%;
}
.mv section .mv_copy ul {
	position:absolute;
	bottom:1rem;
	left:-1rem;
}
.mv section .mv_copy ul li {
	padding: .5rem 1rem .5rem 2rem;
	border-radius: 0 3rem 3rem 0;
	max-width: 70%;
	background-color: rgba(254,177,13,0.8);
}
.mv section .mv_copy ul li .fa {
	font-size:1.5rem;
}
.mv section .mv_copy ul li span {
	display:block;
}
}

/* sec01 */
.sec01 {
	background-color: #f3ede1;
	padding: 2rem 0 0;
	margin-top: -1px;
}
.sec01 section {
	padding-bottom:2rem;
}
.sec01 h3 {
	display: flex;
	align-items: center;
	color: #333333;
}
.sec01 h3 span {
	background-color: #26a5cc;
	color: #ffffff;
	border-radius: .5rem;
	width: 40px;
	height: 40px;
	display: flex;
	margin-right: 1rem;
	align-items: center;
	justify-content: center;
	font-family: "Quicksand", sans-serif;
	letter-spacing: 1px;
	font-weight: 500;
}
.sec01 .flex_center {
	margin: 1rem auto;
}
ul.check_li {
	list-style: none;
	margin: 0;
}
ul.check_li li {
	margin: 0 0 1rem;
	position: relative;
	padding-left: 1.5rem;
	line-height: 1.2rem;
}
ul.check_li li::before {
  position: absolute;
  left: 0;
  font-family: "FontAwesome";
  font-weight: 900;
  content: '\f058';
  color: #feb10d;
  font-size: 1.2rem;
}
@media screen and (min-width:800px) {
.sec01_title {
	position: relative;
	height: 320px;
}
.sec01_title_l,
.sec01_title_r {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}
.sec01_title_l {
	right: 50%;
	padding: 1rem;
	box-sizing: border-box;
}
.sec01_title_r {
	left: 52%;
	width: 49%;
	height: auto;
}
}
@media screen and (max-width: 800px) {
.sec01_title {
	padding: 2rem 0;
}
.sec01_title_l {
	padding-left: .5rem;
}
.sec01_title_r {
	padding-left: 2rem;
}
}

/* sec02 sec03 */
.sec02 {
	background-color: #deeef4;
	margin-top: -1px;
}
.sec02 section {
	padding: 2rem 0 4rem;
}
.sec03 {
	background-color: #f3ede1;
	padding-bottom: 150px;
	margin-bottom: -50px;
}
.sec03 section {
	padding:2rem 0 0;
}
.review_box {
	background-color: #ffffff;
	border-radius: 1rem;
}
.review_box .review_img {
	margin-right:-1px;
}
.review_box .review_text h5 {
	margin: 0 .5rem;
	font-family: "LINE Seed JP", sans-serif;
	font-weight: 400;
}
.review_box .review_text table {
	width: 100%;
}
.review_box .review_text table tr.b {
	background-color: #c2ebf8;
	font-family: "LINE Seed JP", sans-serif;
}
.review_box .review_text table tr.o {
	background-color: #ffebbf;
}
.review_box .review_text table th {
	width: 35%;
	text-align: center;
	color: #999999;
	padding: .2rem 0;
}
.review_box .review_text table td {
	width: 65%;
	padding: .2rem 0;
}
.review_box .review_text p {
	margin: .5rem .5rem 0;
	font-size: 1rem;
	line-height: 1.1rem;
}
@media screen and (min-width:800px) {
.review_box {
	display: flex;
	align-items: center;
	min-height: 222px;
}
.review_box .review_img {
	padding: .5rem 0 .5rem 1rem;
	width: 30%;
}
.review_box .review_text {
	padding: .5rem 0;
	width: 70%;
}
}
@media screen and (max-width: 800px) {
.sec02 section {
	padding: 2rem 1rem 4rem;
}
.sec03 section {
	padding:4rem 1rem 0;
}
.review_box {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 1rem 0;
	margin-bottom:1rem;
}
.review_box .review_img {
    max-width: 50%;
}
.review_box .review_text {
	padding-top: 1rem;
	text-align: center;
}
.review_box .review_text p {
	text-align:left;
}
}

/* sec04 */
.sec04 section {
	padding: 6rem 0 3rem;
}
.voice_box {
	background-color: #f3ede1;
	padding: 2rem 1rem;
	border-radius: 2rem;
	margin-bottom: 2rem;
}
.voice_box img {
    width: 15%;
}
.voice_box .voice_text h4 {
	color:#26a5cc;
	font-size:1.1rem;
}
@media screen and (min-width:800px) {
.voice_box {
	display: flex;
	align-items: center;
}
.voice_box .voice_text {
	padding-left: 1rem;
	width: 85%;
}
}
@media screen and (max-width: 800px) {
.voice_box img {
	margin: 0 auto 1rem;
	width: auto;
	display: block;
}
}

/* sec05 */
.sec05 {
	background-color: #deeef4;
}
.sec05 section {
    padding: 1rem 0;
	position:relative;
}
.sec05 section .sec05_l {
	text-align: center;
	padding: 1rem;
	box-sizing: border-box;
}
.sec05 section .sec05_l img {
	max-width:180px;
	margin-bottom:1rem;
}
.sec05 section .sec05_r {
	padding: 1rem;
	box-sizing: border-box;
}
.recommend_slide .slide_img {
	border-radius: 2rem;
}
.recommend_slide .slide_img img {
    border-radius: 2rem;
}
.slide-arrow {
	position: absolute;
	width: 64px;
	height: 64px;
	margin-bottom: 0 !important;
}
.prev-arrow {
	left: 3rem;
}
.next-arrow {
	right: 3rem;
}
.dots-wrap {
    display: flex;
    justify-content: center;
    margin: 0;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.dots-wrap li {
    width: 10px;
    height: 10px;
    margin: 0 5px;
    background: #cccccc;
    border-radius: 50%;
    cursor: pointer;
    list-style: none;
}
.dots-wrap li:hover,
.dots-wrap li.slick-active {
    background: #26a5cc;
}
.dots-wrap li button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
}
@media screen and (min-width:800px) {
.sec05 section {
	display: flex;
	align-items: center;
}
.sec05 section .sec05_l {
	width: 40%;
	padding: 1rem 1rem 100px;
	position: relative;
}
.slide-arrow {
	bottom: 0;
}
.dots-wrap {
    bottom: 25px;
}
.sec05 section .sec05_r {
	width: 60%;
}
}
@media screen and (max-width: 800px) {
.sec05 section {
    padding: 1rem 0 180px;
    margin-top: -1px;
}
.sec05 section .sec05_l {
    padding: 1rem 0 0;
}
.slide-arrow {
	bottom: 130px;
}
.dots-wrap {
    bottom: 155px;
}
}

/* footer */
#footer {
	background-color: #f3ede1;
	padding: 2rem 0 0;
	text-align: center;
}
#footer section {
	position: relative;
	box-sizing: border-box;
}
#footer section .footer_bnr {
	max-width:640px;
	margin-bottom:4rem;
	width: 100%;
}
.footer_inner {
	background-color: #ffffff;
	padding: 4rem 2rem;
	box-sizing: border-box;
	border-radius: 1rem 1rem 0 0;
}
ul.footer_bottom {
	list-style: none;
	margin: 2rem auto;
}
ul.footer_bottom li {
	margin:1rem 0;
}
.footer_top a .fa {
	margin:0 .3rem;
}
.footer_top {
	font-size: 1rem;
}
.footer_top a {
	margin: 0 .5rem;
}
.footer_top .header_tel a {
	color: #feb10d;
	font-size: 1.4rem;
}
.footer_top .header_contact a {
	color: #ffffff;
	background-color: #feb10d;
	padding: .5rem 1rem;
	border-radius: 2rem;
}
.footer_top .header_site a {
	color: #ffffff;
	background-color: #26a5cc;
	padding: .5rem 1rem;
	border-radius: 2rem;
}
.footer_copyright_wrap {
	color: #999999;
	font-size: .8rem;
	margin-top: 3rem;
}
@media screen and (min-width:800px) {
#footer section .footer_img {
	position: absolute;
	top: 0;
	right: 0;
	max-height: 300px;
}
ul.footer_bottom {
	display: flex;
	align-items: center;
	justify-content: center;
}
ul.footer_bottom li {
	margin: 0 1rem;
}
.footer_top {
	display: flex;
	justify-content: center;
	align-items: center;
}
}
@media screen and (max-width: 800px) {
#footer {
	padding: 100px 0 0;
}
#footer section {
	padding:0 1rem;
	box-sizing:border-box;
}
#footer section .footer_img {
	position: absolute;
	top: -270px;
	right: .5rem;
	max-height: 240px;
}
.footer_top .header_tel a,
.footer_top .header_contact a,
.footer_top .header_site a {
	display:block;
	width:fit-content;
	margin:1rem auto;
}
}

/* PC用 */
@media screen and (min-width:800px) {
.pcNone {
	display: none;
}
}

/* SP用 */
@media screen and (max-width: 800px) {
.spNone {
	display: none;
}
section {
	padding-left:.5rem;
	padding-right:.5rem;
	box-sizing:border-box;
}
}
