@charset "utf-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200&display=swap");
@import url("https://fonts.googleapis.com/icon?family=Material+Icons+Outlined");

body{margin: 0;padding: 0;}
#main{margin: 0;}
#main * {
    box-sizing: border-box;
    font-family: 'Noto Sans JP', serif;
}
#main * img{width: 100%;vertical-align: bottom;}
#main * a{transition: .4s;}
#main * a:hover{opacity: .6;}
#main h1{margin: 0;padding: 0;}
#main h2{font-size: 1.7em;margin: 1em 0;}
.con_box h2{font-size: 30px;text-align: center;}
#main .con_sp{display: none;}

.cv_area{max-width: 1223px;margin: 0 auto 80px;}
.cv_area .chushaku{font-size: 12px;}
.cv_area a.btn{position: relative; display: block;max-width: 710px;background-color: #3B4043;color: #fff;font-size: 1.5em;text-align: center;padding: 40px 20px;margin: 60px auto;border-radius: 5px;}
.cv_area a.btn span{font-size: 0.7em;margin-right: 0.5em;vertical-align: baseline;}
.cv_area a.btn::after{
  content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    right: 35px;
    margin: 15px 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
}

#cv_footer{position: fixed; display: flex;box-sizing: border-box;right: 0; top: 0;z-index: 10;text-align: center;justify-content: space-between;}
#cv_footer a{display: block;color: #fff;width: 250px;padding: 15px 0 12px;}
#cv_footer a:first-of-type{background-color: #2C926A;align-items: center;justify-content: center;}
#cv_footer a:last-of-type{background-color: #B8561B;}
#cv_footer a span{font-size: 10px;}

section .h2_top span{background-color: #F0F3F5; padding: 20px;display: inline-block;font-weight: bold;color: #3B4043;}
.bg_g{background-color: #F0F3F5;}
.bg_g .h2_top span{background-color: #fff;}
.bg_g .h2_top span:last-of-type{margin-left: 10px;}

/* -------------- main -------------- */

.cv_fixed{position: fixed;right: 0;top: 0; z-index: 10;font-family: "Noto Sans JP";}
.cv_fixed a{display: block;background-color: #F9DF32; padding: 20px; color: #000;text-decoration: none;}
.cv_fixed a span{background-color: #fff;padding: 4px 10px;margin-right: 1em;}

#first{width: 100%;}
#concierge{padding: 120px 0; max-width: 1366px;margin: 0 auto 0;background: url(../img/concierge_bg.svg) no-repeat bottom right;}
#concierge .flex_wrap2{display: flex;margin: 60px 0;}
#concierge .flex_wrap2 > div{display: flex;align-items: center;}
#concierge .flex_wrap2 > div :nth-of-type(2){margin-left: 40px;}
#concierge .flex_wrap2 > div img{width: 80%;}

#staff .flex_wrap2{display: flex;margin: 60px auto 0;max-width: 1224px;font-size: 18px;}
#staff .flex_wrap2 > p{width: 100%;max-width: 554px;margin: 0;}
#staff .flex_wrap2 > div{width: 55%; background-color: #FFF8E8; padding: 0 60px;display: flex;align-items: center;}


#concierge_contents{max-width: 1090px;margin:100px auto 100px;}
#nagare{background-color: #FFF8E8;}
#nagare div{max-width: 886px;margin:auto;padding: 120px 0;}

#lead{margin: 60px 0; padding: 40px 4% 60px; display: flex;justify-content: center;align-items: center; width: 100%;background: url(../img/lead_bg.jpg);width: 100%;background-size: cover; background-position: center center;}
#lead div{ color: #fff;line-height: 2.5em;text-align: center;}

#onayami{text-align: center;margin: 80px 0;}
#onayami ul{max-width: 1044px;margin: auto;display: flex;flex-wrap: wrap;justify-content: center;padding: 0;}
#onayami ul li{list-style: none;padding: 15px 20px 15px 30px;margin: 10px;font-size: 14px;font-weight: bold;color: #3B4043;background-color: #F0F3F5;}
#onayami ul li::before{font-family:'Material Icons Outlined'; content: '\e5ca';font-size: 1.5em;vertical-align: middle; color: #37AB33;margin-right: 10px;}

#design{text-align: center;background-color: #F0F3F5;padding: 80px 0;}
#design h2{text-align: center;}
#design h3{font-size: 1.5em;margin-bottom: 1em;}
.flex_design{display: flex;text-align: left;}
.flex_design > p{width: 70%;margin-bottom: 60px;}
.flex_design > div{display: 30%;display: flex;align-items: center;justify-content: center;padding: 0 8%;}
.flex_design > div > div{max-width: 300px;}
.flex_design > div > div p:first-of-type{text-align: right;font-size: 12px;}
.flex_design.re > p{order: 2;}
#design .cv_area{max-width: 983px;}
#design h2{margin: 1em 0 2em;}

.flex_concierge{display: flex;justify-content: center;margin: 80px auto 0;max-width: 1115px;}
.flex_concierge h2{font-size: 2em;}
.flex_concierge > p{max-width: 562px;}
.flex_concierge > div{padding-right: 10%;width: calc(100% - 562px);}
.flex_course{display: flex;margin: 40px auto 0;max-width: 1115px;justify-content: space-between;}
.flex_course > div{width: 24%;padding: 40px; background-color: #F0F3F5;text-align: center;color: #3B4043;}
.flex_course h3{font-size: 1.5em;font-weight: bold;margin: 0 0 1em;}
.flex_course h3 span{display: block;font-size: 0.7em;}
.flex_course p{text-align: left;margin: 0;}
.flex_concierge small{font-size: 12px;}
.flex_concierge strong{font-weight: bold;background:linear-gradient(transparent 40%, #f8de4d 40%);}

#tochi{padding: 60px 0;text-align: center;}
#tochi > div{max-width: 817px;margin: auto;}
#tochi h2{margin: 2em 0;}
#tochi .h2_bottom{margin: 0 auto 3em;max-width: 666px;text-align: left;}

#about{margin: 100px 0;}
#about h2{text-align: center;}
.flex_wrap3{display: flex;max-width: 1075px;margin: auto;justify-content: space-between;flex-wrap: wrap;}
.flex_wrap3 > div{width: 32%;}
.flex_wrap3 h3{font-size: 20px;margin: 1em 0;}
.flex_wrap3 p{font-size: 15px;}
.flex_wrap3 small{font-size: 12px;}

#access{margin: 60px 0;}
#access h2{text-align: center;margin-bottom: 1em;}
#access h2 span{display: inline-block;}
.access{width: 100%;display: flex;margin-top: 40px;}
.access .map_box{width: calc(100% - 522px);min-width: 400px;}
.access .map_box iframe{vertical-align: bottom;}
.access .address{max-width: 522px;width: 100%; display: flex;align-items: center;justify-content: center; background-color: #FFF8E8;padding: 60px 0;}
.access .address > div div:first-of-type{max-width: 142px;margin: auto;}
.access .address img{width: 100%;}
.access .address div{text-align: center;}
#main .access .address h2{margin: 0 0 10px;}
.access .address p{font-size: 14px;max-width: 250px;margin: 0 auto 0.5em;}
.access .address a.tel {text-decoration: none;color: #000;pointer-events:none;display: block;}
.access .address a.tel span{font-size: 2em;font-weight: bold;color: #3F9545;}
.access .address .souten{font-size: 12px;margin: 5px 0;}
.access .address .tag{background-color: #fff;padding:5px 10px;border-radius: 20px;font-size: 13px;font-weight: bold;color: #3F9545;display: inline-block;}
.access .address a.btn{color: #000;display: block;position: relative; background-color: #FFC537;padding: 20px 40px 20px 20px;border-radius: 10px;margin-top: 20px;font-weight: bold;}
.access .address a.btn::after{ 
  content: "";
  width: 7px;
  height: 7px;
  position: absolute;
  right: 15px;
  margin: 7px 0;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  transform: rotate(45deg);}

footer{background-color: #00a9c8;padding: 40px 0;text-align: center;font-size: 13px;color: #fff;}
footer .copyright{margin-top: 2em;}

.cv_line{max-width: 980px;padding: 0 4%; margin:100px auto 100px;}
.bana_wrap{max-width: 665px;margin: 100px auto 0;}

#jigyou{padding: 100px 0 0; text-align: center;margin-bottom: -40px;}
#jigyou h2{margin-bottom: 2em;}
#jigyou .flex_3{display: flex;justify-content: space-around;width: 100%;flex-wrap: wrap;}
#jigyou .flex_3 div{width: 32%;margin-bottom: 40px;}

.cv_box3{display: flex;justify-content: space-around;flex-wrap: wrap;max-width: 859px;margin: 100px auto 100px;}
.cv_box3 a{display: block;width: 45%;}
.cv_tenjijo {margin-top: 80px;}
#main .cv_tenjijo h2{max-width: 548px;margin: auto;}
.cv_tenjijo .felx{display: flex;margin-top: 20px;}
.cv_tenjijo .felx a{width: 50%;}

#last{position: relative;background-image: url(../img/last_bg.webp);width: 100%;background-size: cover; background-position: center center; height: 560px}
#last div{position: absolute;font-size: 24px; line-height: 1.8em; max-width: 450px;height: 170px; top: 0;bottom: 0;right: 0;left: 0; margin: auto;background-color: #fff;text-align: center;padding: 40px;}

#last_text{max-width: 500px;margin: 100px auto 100px;text-align: center;}
#last_text p{margin-bottom: 1em;line-height: 2.5em;}
#last_text div{margin-top: 50px;}

#soudan {margin-top: 4em;}
.keisai{background-color: #EEF6F0;max-width: 700px;margin: 60px auto 60px;padding: 60px;}
.keisai h3{font-size: 24px;text-align: center;}
.keisai ul{max-width: 340px;padding: 0; margin: auto; list-style: none;}
.keisai ul li{padding-left: 2.2em;background-image: url(../img/check.svg);background-repeat: no-repeat;background-size: 2em;background-position: left top;line-height: 2em;}
.soudan_flex{display: flex;justify-content: space-between;flex-wrap: wrap;max-width: 950px;margin: auto;}
.soudan_flex div{width: 48%;}

#faq{padding: 100px 0;background-color: #EEEEEE;}


/* movie */
#movie{background-color: #FFF8E8;width: 100%;margin: 40px 0 0 0; padding: 10px 0;}
.movie_box{
  margin: 100px auto 100px;
  max-width: 980px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.movie_box>div{
  position: relative;
  width: 60%;
}
.movie_box > div::before {
  display: block;
  content: "";
  padding-top: 56.25%;
}
.movie_box iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* -------------- @media -------------- */

@media screen and (max-width: 1096px) {
  #jigyou .flex_3 div{width: 48%;}
}


@media screen and (max-width: 690px) {
  #main .con_pc{display: none;}
  #main .con_sp{display: block;}
  .con_box h2{font-size: 20px;padding: 0 8%;}
  #cv_footer{background-color: #efefef;padding: 10px 2%;width: 100%;top:auto;right: auto; bottom: 0;justify-content: center;}
  #cv_footer a{width: 80%;border-radius: 10px;padding: 20px 0;}
  #cv_footer a:first-of-type{background-color: #2C926A;display: flex; border-bottom: 5px solid #22644A;}
  #cv_footer a:last-of-type{background-color: #B8561B;border-bottom: 5px solid #8A4922;}
  .cv_area a.btn {font-size: 1.1em;}
  #cv_footer a span{font-size: 10px;}
  .cv_area{width: 90%;}
  .cv_fixed{width: 100%;bottom: 0;top: auto;text-align: center;}
  .cv_fixed a{width: 100%;padding: 25px;box-sizing: border-box;}
  #lead div{font-size: 0.8em;}
  #onayami ul li{width: 96%;text-align: left;margin: 3px 0;font-size: 1em;padding: 20px 20px 20px 30px;;}
  #design{padding: 60px 0 0;}
  #design h2{text-align: left;padding: 0 9%;}
  #design h2 br{display: none;}
  #design h3{font-size: 1.3em;margin: 1em;}
  .flex_design{flex-wrap: wrap;}
  .flex_design > p{width: 100%;margin: 0;}
  .flex_design > div{width: 100%;margin-bottom: 40px;}
  .flex_design.re > p{order: 1;}
  .flex_design.re > div{order: 2;}
  .flex_concierge{flex-wrap: wrap;margin: 0;}
  .flex_concierge > p{margin: 0;}
  .flex_concierge > div{width: 100%;text-align: center;padding: 0 9%;order: 1;}
  .flex_concierge > div, .flex_concierge h2{text-align: left;}
  .flex_course{flex-wrap: wrap;justify-content: center;}
  .flex_course > div{width: 91%;margin-bottom: 10px;padding: 30px;}
  .flex_course h3{margin: 0 0 0.5em;}
  .flex_course h3 span{display: inline-block;margin-left: 0.5em;}
  .flex_course p{font-size: 14px;}
  .h2_top{font-size: 1em;text-align: center;margin-top: 1em;}
  .bg_g .h2_top span:last-of-type{margin-top: 10px;}
  #tochi h2{text-align: left;margin: 1em 0;}
  #tochi h2, #tochi .h2_bottom, #tochi div:first-of-type{padding: 0 9%;}
  #tochi .cv_area a.btn span{display: block;}
  .cv_area a.btn::after{margin: 10px 0;}
  .flex_wrap3{justify-content: center;}
  .flex_wrap3 > div{width: 80%;margin-bottom: 40px;}
  .access{flex-wrap: wrap;}
  .access h1 { padding: 20px 10px;width: 100%;border-radius: 0; margin:0 auto 60px;display:block;vertical-align: inherit;}
  .access .map_box{width: 100%;order: 2;min-width: auto;}
  .access .map_box iframe{height: 400px;}
  .access .address{width: 100%;padding: 40px 0;order: 1;max-width: none;}	
  .access .address a.tel{text-decoration: underline;pointer-events:auto;}
  .access .address a.btn{text-decoration: none;}
  #onayami ul li::before{vertical-align:sub;}
  #design .cv_area{margin: 40px auto 80px;}
  .bana_wrap{max-width: 665px;margin: 0 auto 40px;width: 80%;}
  #concierge{padding: 80px 0;background:none;}
  #concierge .flex_wrap2{flex-wrap: wrap;justify-content: center;}
  #concierge .flex_wrap2 > p{width: 90%;margin: 100px 0 0;}
  #concierge .flex_wrap2 > p{order: 2;}
  #concierge .flex_wrap2 > div :nth-of-type(2){margin-left: 0;}
  #concierge .flex_wrap2 > div img{width: 100%;}
  #movie{background-color: #FFF8E8;width: 100%;margin: 0; padding: 1px;}
  .movie_box > div{width: 90%;}
  #concierge_contents{max-width: 1090px;margin:60px auto 60px;}
  #nagare div{padding: 0 0;}
  #staff .flex_wrap2{flex-wrap: wrap;justify-content: center;margin: 0;}
  #staff .flex_wrap2 > p, #staff .flex_wrap2 > div{max-width: 100%; width: 100%;}
  #staff .flex_wrap2 > div{padding: 40px 10%;font-size: 16px;background-color: #fff;}
  .cv_box3 a{width: 90%;margin-bottom: 40px;}
  #last{height: 450px;}
  #last div{font-size: 5vw;max-width: 70%;height: 9em;}
  #last div br{display: none;}
  .soudan_flex{justify-content: center;}
  .soudan_flex div{width: 90%;}
  #main .cv_tenjijo h2{width: 85%;}
  .cv_tenjijo .felx{flex-wrap: wrap;}
  .cv_tenjijo .felx a{width: 100%;}
  #faq{padding: 80px 4%;}
  
}

@media screen and (max-width: 522px) {
  .access .address{padding: 40px 0 40px;}
}

@media screen and (max-width: 375px) {}



/*  cv_fixedアニメーション　*/
@media screen and (max-width: 690px) {
	.cv_fixed{
		opacity: 0;
		transform: translateY(100px);
	}
/*　上に上がる動き　*/

.cv_fixed.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*　下に下がる動き　*/

.cv_fixed.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(100px);
  }
}
}


/* ============================================================
contents_solution アコーディオン
============================================================ */


.solution_set_inner {
	padding: 45px;
	margin: 0 auto;
	box-sizing: border-box;
}
.solution_inner_body_graph {
	width: 60%;
}
.solution_hidden_wrap {
    max-width: 950px;
	margin: 40px auto 40px;
}
.solution_hidden_bn {
	display: none;
}
.solution_hidden_title {
	display: block;
	width: 100%;
    max-width: 950px;
    margin: auto;
	box-sizing: border-box;
	position: relative;
	background: #fff;
	cursor: pointer;
	/* border-bottom: solid 2px #000; */
	transition: .4s;
}
.solution_hidden_title:hover{opacity: .6;}
.solution_hidden_wrap:last-child .solution_hidden_title{
	border-bottom: none;
}
.solution_hidden_title_inner {
	width: 100%;
	max-width: 950px;
	padding: 28px 34px 34px;
	box-sizing: border-box;
	margin: 0 auto;
	font-size: 18px;
    color: #000;
}
.solution_hidden_title_inner span{font-weight: bold;color: #C21111;margin-right: 0.7em;}
.solution_hidden_title_inner_flex {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 8px 34px;
}
.solution_hidden_title_flag {
	display: inline-block;
	padding: 12px 14px;
	position: absolute;
	right: 34px;
	top: 50%;
	margin-top: -20px;
	color: #000;
	font-size: 12px;
	line-height: 1;
}
.solution_hidden_title_flag:after {
	content: "";
	display: inline-block;
	width: 13px;
	height: 13px;
	margin: 0 0 0 3px;
	position: relative;
	top: 2px;
	background: url(../img/icon_plus.svg) no-repeat center center/cover;
}

.solution_hidden_bn:checked~.solution_hidden_title>.solution_hidden_title_flag:after {
	background: url(../img/icon_minus.svg) no-repeat center center/cover;
}
.solution_hidden_title_badge {
	display: block;
	width: 90px;
	height: 90px;
	line-height: 90px;
	margin: 0 15px 0 0;
	border-radius: 45px;
	/* border: dashed 1px #333; */
	background: #fff;
	font-size: 15px;
}
.solution_hidden_body {
	padding: 0 45px;
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: all 0.2s ease 0s;
}
.solution_hidden_bn:checked~.solution_hidden_body {
	height: auto;
    max-width: 950px;
	padding: 45px;
	opacity: 1;
    background-color: #fff;
}
.solution_hidden_wrap .flex_wrap, .solution_hidden_wrap .noflex_wrap {
	display: flex;
	justify-content: space-between;
	max-width: 650px;
	margin: 0 auto 50px;
}
.solution_hidden_wrap .noflex_wrap {
	display: block;
	margin: 0 auto;
}
.solution_hidden_wrap .flex_box {
	width: 48%;
	max-width: 300px;
}
.solution_hidden_wrap .flex_box_image {
	margin: 0 auto 24px;
}
.solution_hidden_wrap .flex_box .flex_box_image {
	max-width: 292px;
}
.solution_hidden_wrap .flex_box_title {
	margin: 0 0 20px;
	line-height: 1;
	font-size: 18px;
}
.solution_hidden_wrap .flex_box_desc {
	font-size: 15px;
}
.solution_hidden_wrap .flex_box_notice {
	margin: 20px 0 0;
	font-size: 12px;
	color: #707f89;
}
.solution_cta {
	margin: 40px auto 75px;
}
.solution_cta:last-child {
	margin: 40px auto 0;
}
@media screen and (max-width: 690px) {
  .solution_hidden_title_inner{ padding: 28px 50px 34px 34px;font-size: 16px;}
  .solution_hidden_title_flag{right: 14px;}
}
.logo{
width: 300px;
height: auto;
margin: 0 auto;

}