@charset "utf-8";
body {
  font-family: 'Noto Sans JP', sans-serif, "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
}
em {
  font-weight: inherit;
}
body:first-of-type h3, h3 {
  font-size: 28px;
  text-align: center;
  color: #F15A24;
  margin-bottom: 60px;
  font-weight: 800;
  line-height: 1.4;
}
h3 span {
  font-weight: 300;
  display: inline-block;
}
section {
  position: relative;
}
.site_navi{
	transition: 0s;
}
@media screen and (min-width: 801px) {
  .site_navi {
    display: none;
  }
  .float_navi.site_navi {
    display: block;
  }
}
@media screen and (max-width: 800px) {
  #breadCrumbSection, #breadlink, #headerArea, .content_headnav {
    display: none;
  }
}
@media screen and (min-width: 801px) {
  /*.site_navi:not(.float_navi){
		display: none;
	}*/
	#contentsBlock > .topnavi{
		display: none;
	}
}
.mainvisual {
  background-color: #fff5f1;
	 background-image: url("/smartcloudphone/assets/img/top/kvbg_pc.jpg");
  padding: 70px 3vw;
	background-size: cover;
}
.mainvisual .inner {
  max-width: 1050px;
  margin: auto;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}
.mainvisual h1 {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  margin-bottom: min(3.5vw, 34px);
}
.mainvisual h1 span {
  display: block;
  color: #F15A24;
    font-size: min(calc(58vw / 19), 36px);	
	font-weight: 800;
}
.mainvisual h1 span.underline {
  background: rgba(0, 0, 0, 0.00);
  background: -webkit-linear-gradient(rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.00) 70%, rgba(255, 240, 0, 0.50) 70%, rgba(255, 240, 0, 0.50) 90%, rgba(0, 0, 0, 0.00) 90%, rgba(0, 0, 0, 0.00) 100%);
  background: linear-gradien(rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.00) 70%, rgba(255, 240, 0, 0.50) 70%, rgba(255, 240, 0, 0.50) 90%, rgba(0, 0, 0, 0.00) 90%, rgba(0, 0, 0, 0.00) 100%);
  font-size: min(calc(44vw / 14), 38px);
  font-weight: 700;
  line-height: 1.4;
}
.mainvisual h2 {
 width: 100%;
  margin-bottom: 3em;
}
.btn_area {
  max-width: 500px;
  flex-shrink: 0;
  width: 50vw;
  display: flex;
  justify-content: space-between;
  color: #F15A24;
}
#mainSection .icon_btn, .icon_btn {

    display: block;
    width: 47%;
	text-align: center;
    max-width: 375px;
    background-color: #000;
    font-size: 20px;
    font-weight: 800;
    color: #fff;
    border-radius: 50px;
    position: relative;
    padding-top: 10px;
    padding-bottom: 25px;
    transition: 0.5s;

}
#mainSection .icon_btn:before, .icon_btn:before{
    content: "";
    width: 110px;
    height: 4px;
    display: block;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 17px;
	border-radius: 10px;
    position: absolute;
    background: #fbb03b;
    background: -moz-linear-gradient(left, #fbb03b 0%, #fadd00 100%);
    background: -webkit-linear-gradient(left, #fbb03b 0%, #fadd00 100%);
    background: linear-gradient(to right, #fbb03b 0%, #fadd00 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb03b', endColorstr='#fadd00', GradientType=1);
}
#mainSection .icon_btn:hover, .icon_btn:hover {
  background-color: #ff9800;
	
}
#mainSection .icon_btn p, .icon_btn p {
  font-weight: 500;
  transition: 0.5s;
}
#mainSection .icon_btn:hover p, .icon_btn:hover p {
  color: #fff;
}
.icon_btn span {
  display: block;
  width: min(2vw, 26px);
  margin-right: min(1vw, 10px);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.icon_btn span.img1 {
  background-image: url("../img/top/icon_book1w.svg");
}
.icon_btn span.img2 {
  background-image: url("../img/top/icon_mail1w.svg");
}
.icon_btn span img {
  transition: 0.5s;
}
.icon_btn:hover span img {
  opacity: 0;
}
.mainvisual .left {
 
  
  width: 60%;
  position: relative;
  z-index: 5;
}
.mainvisual .right {
  position: relative;
  width: 37%;
  display: block;
  z-index: 1;
}
.mainvisual .right img {
 max-width: 470px;
    width: 100%;
    position: absolute;
    bottom: 0;
    top: 7%;
    margin: auto;
    right: 0;
}
@media screen and (max-width: 800px) {
 #toppage section.mainvisual {
    padding: 9vw 6vw;
	 background-image: url("/smartcloudphone/assets/img/top/kvbg_sp.jpg");
  }
  .mainvisual .inner {
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
  }
  .mainvisual h1 {
    margin-bottom: min(3.5vw, 34px);
  }
  .mainvisual h1 span {
    font-size: calc(88vw / 18);
  }
  .mainvisual h1 span.underline {
    font-size: 6.4vw;
  }
  .mainvisual h2 {
    width: 100%;
    margin-bottom: 0;
    height: 96vw;
  }
  .btn_area {
	  width: 100%;
    max-width: none;
    justify-content: space-between;
  }
  #mainSection .icon_btn, .icon_btn {
    width: 41vw;
    height: 4vw;
    margin-right: 0;
    font-size: 3.4vw;
    padding-top: 1vw;
    padding-bottom: 5vw;
  }
	#mainSection .icon_btn:before, .icon_btn:before {
    width: 80%;
    max-width: 110px;
    height: 0.8vw;
    bottom: 2.5vw;
	}
  .icon_btn span {
    width: 4vw;
    margin-right: 1vw;
  }
  .mainvisual .left {
    width: 100%;
    max-width: none;
    z-index: 5;
    position: relative;
  }
  .mainvisual .right {
    width: 73vw;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: calc(39vw + 40px);
	  top: 48vw;
    z-index: 1;
  }
  .mainvisual .right img {
    width: 100%;
    max-width: none;
    top: 0;
    right: 0;
    position: relative;
  }
}
.btn_gra {
  display: flex;
  align-items: center;
  justify-content: center;
}
.btn_gra a {
  border-radius: 10px;
  max-width: 340px;
  width: 100%;
  font-size: 18px;
  color: #fff;
  font-weight: 700;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#F15A24+0,79bdd1+100 */
  background: #F15A24; /* Old browsers */
  background: -moz-linear-gradient(left, #F15A24 0%, #ff9800 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #F15A24 0%, #ff9800 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #F15A24 0%, #ff9800 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#F15A24', endColorstr='#ff9800', GradientType=1); /* IE6-9 */
  position: relative;
  overflow: hidden;
  /*border: solid 0px rgba(31,145,179,0);
	border: solid 0px rgba(0,0,0,0);
	box-sizing: border-box;*/
}
.btn_gra a span {
  font-size: inherit;
  color: inherit;
  font-weight: inherit;
  position: relative;
  z-index: 5;
}

#mainSection .btn_gra a:hover, .btn_gra a:hover {
  color: #fff;
  /*border: solid 2px rgba(31,145,179,1);
	border: solid 2px rgba(0,0,0,1);*/
}
#mainSection .btn_gra a:hover span {
  color: #ffffff;
}
.btn_gra a:before {
  content: "";
  left: 0;
  top: 0;
  height: 100%;
  position: absolute;
  background-color: #fbb03b;
  z-index: 1;
  width: 0;
  transition: 0.3s;
}
.btn_gra a:hover:before {
  width: 100%;
}
.top_about {
  /*background-color: #FFF0D3;*/
	background-color: #ffffff;
  padding: 60px 40px;
  
  background-position: left bottom;
  background-size: 330px auto;
  background-repeat: no-repeat;
}
.top_about h3 {
  text-align: left;
  margin-bottom: 20px;
	font-size: 24px;
}
.top_about .inner {
  margin: auto;
  max-width: 1050px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
 
}
.top_about .inner .left {
  margin-right: 30px;
  max-width: 550px;
  flex-shrink: 0;
  width: 100%;
}
.top_about .inner .right {}
.top_about .inner .right img {
  margin: auto;
}
@media screen and (max-width: 1000px) {
  .top_about .inner {
    flex-direction: column;
  }
  .top_about .inner .left {
    max-width: none;
    width: 100%;
    margin: auto;
    margin-bottom: 20px;
  }
  .top_about .inner .right {
    width: 90%;
    padding-left: 8%;
  }
  body:first-of-type .top_about h3, .top_about h3 {
    text-align: center;
  }
}
.banner_area .inner {
  display: flex;
  justify-content: space-between;
  margin: auto;
  max-width: 1000px;
}
.banner_area .inner > div {
  max-width: 480px;
  width: calc(50% - 20px);
}
.banner_area a{
	max-width: 480px;
	margin: auto;
	display: block;
}
@media screen and (max-width: 600px) {
  .banner_area .inner {
    justify-content: flex-end;
    flex-direction: column;
    align-items: center;
  }
  .banner_area .inner > div {
    max-width: 700px;
    width: 100%;
  }
  .banner_area .inner > div :first-child {
    margin-bottom: 20px;
  }
}
.top_navi {
  background-color: #fff;
  padding: 10px 20px;
  padding-right: 35px;
  position: relative;border-bottom: 5px solid #dddddd;
}
.top_navi nav {
  margin: auto;
  display: flex;
  justify-content: space-between;
  max-width: 1130px;
  width: 100%;
}
.top_navi nav a {
  padding-left: 15px;
  margin-left: 0px;
  margin-right: 0px;
  position: relative;
  display: block;
  font-size: 16px;
}
.top_navi nav a:not(.open_subnavi):before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  bottom: 0;
  top: 0;
  left: 0px;
  margin: auto;
  border-left: 7px solid #00b6ab;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-right: 0px solid transparent;
}
.top_navi nav a:not(.open_subnavi):hover:before {
  border-left: 7px solid #F15A24;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-right: 0px solid transparent;
}
.top_navi nav a.open_subnavi:after, .top_navi nav a.open_subnavi:before {
  content: "";
  position: absolute;
  display: block;
  width: 10px;
  height: 2px;
  bottom: 0;
  top: 0;
  left: 0px;
  margin: auto;
  background-color: #00b6ab;
}
.top_navi nav a.open_subnavi:after {
  left: 4px;
  width: 2px;
  height: 10px;
  transition: 0.5s;
}


.top_navi nav a.open_subnavi:hover:after, .top_navi nav a.open_subnavi:hover:before {
  background-color: #F15A24;
}
.top_navi nav a.open_subnavi.opened:after {
  height: 0;
}
@media screen and (max-width: 1000px) {
  .top_navi {
    display: none;
  }
}
.banner_area {
  padding: 20px 20px;
	background: #FFF0D3;
	text-align: center;
}
.banner_area div{
	display: block;
	position: relative;
	max-width: 480px;
	margin: auto;
}
.banner_area a {
  transition: 0.5s;
  
}
.banner_area a{
	position: absolute;
	top: 0;
	left: 0;
	transition: 0.5s;
}
.banner_area a:hover{
	opacity: 0;
}


.dounyu_area{
	padding: 60px 40px;
	overflow: hidden;
}
p.subtitle{
	text-align: center;
	font-weight: 700;
	color: #9E9E9E;
	margin-bottom: 0;
	font-size:16px;
}
.onayami {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  max-width: 1140px;
  width: 100%;
  margin: auto;
  margin-bottom: 40px;
}
.onayami .onayami_item {
	box-sizing: border-box;
  width: 30%;
  margin-bottom: 20px;
	box-shadow: 0px 0px 20px -5px #F15A24;
	border-radius: 10px;
	padding: 20px;
	padding-bottom: 0;
	
}
.onayami_item h4{
display: block;
	background: #fbb03b;
	padding: 10px;
	box-sizing: border-box;
	 font-weight: 800;
	color: #ffffff;
	border-radius: 10px;
	font-size: 20px;
	height: 111px;
	position: relative;
}
body:first-of-type .onayami_item h4{
	font-size: 20px;
	line-height: 130%;
}
.onayami_item h4:after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
	top: calc(100% - 1px);
    left: 0;
    right: 0;
    margin: auto;
    border-top: 12px solid #fbb03b;
    border-left: 12px solid transparent;
	border-right: 12px solid transparent;
}
.tokucho_area{
	 padding: 60px 40px;
	background: #FFF0D3;
}
.tokucho{
	 max-width: 1140px;
  width: 100%;
  margin: auto;
}
.tokucho li{
		box-sizing: border-box;
  margin-bottom: 40px;
	box-shadow: 0px 0px 20px -5px #F15A24;
	border-radius: 10px;
	padding: 40px;
	background: #ffffff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.tokucho li div.left{
	width: 49%;
}
.tokucho li div.right{
	width: 49%;
}
.tokucho li div.left h4,.tokucho li div.right h4{
	font-size:20px;
	font-weight: 700;
	border-left:5px solid #F15A24;
	padding-left: 10px;
	margin-bottom: 15px;
}
.tokucho ul.komelist{
	
}
.tokucho ul.komelist li{
	margin: 0;
	padding: 0;
	margin-bottom: 10px;
	border: none;
	box-shadow: none;
	font-size:14px;
	text-align: left;
	display: block;
	position: relative;
	padding-left: 17px;
}
.tokucho ul.komelist li:before{
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}

.kinou_area{
	padding: 60px 40px;
}
ul.kinou{
	 max-width: 1140px;
  width: 100%;
  margin: auto;
  margin-bottom: 40px;
	display: flex;
	justify-content: space-between;
}
ul.kinou li{
	width: 47%;
}
.kinou li h4{
	font-size:20px;
	font-weight: 700;
	border-left:5px solid #F15A24;
	padding-left: 10px;
	margin-bottom: 15px;
}
.topics_area{
	padding: 60px 40px;
}
.top_function {
  background-color: #FFF0D3;
  padding: 60px 40px;
  background-image: url("../img/bg_square.svg");
  background-position: left bottom;
  background-size: 330px auto;
  background-repeat: no-repeat;
}
.function li img {
  display: block;
  margin: auto;
  width: 60%;
}
.function li h4 {
  font-size: 24px;
  text-align: center;
  margin: 10px auto;
  font-weight: 800;
	color: #ffffff;
	border-radius: 10px;
}
.function li .btn {
  position: absolute;
  left: 0;
  right: 0;
  padding: 0 20px;
  margin: auto;
  bottom: 20px;
}
@media screen and (min-width: 1001px) {
  .function li:nth-child(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 1000px) {
	body:first-of-type .onayami_item h4{
		font-size: 16px;
	}
}
@media screen and (max-width: 500px) {}
.top_kadai {
  padding: 60px 40px;
}
.top_kadai .readtext {
  text-align: center;
  font-size: 20px;
  margin-bottom: 40px;
}
.top_kadai ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: auto;
  max-width: 1050px;
  margin-bottom: 40px;
}
.top_kadai ul li {
  width: calc(50% - 10px);
  margin-bottom: 20px;
  margin-right: 20px;
  background-color: #FFF0D3;
  box-sizing: border-box;
}
.top_kadai ul li:nth-child(2n) {
  margin-right: 0px;
}
.top_kadai ul li a {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  transition: 0.5s;
}
.top_kadai ul li a:hover {
  opacity: 0.8;
}
.top_kadai ul li .left {
  display: block;
  background-color: #F15A24;
  width: 150px;
  flex-shrink: 0;
}
.top_kadai ul li .left img {}
.top_kadai ul li .right {
  padding: 5px 10px;
}
.top_kadai ul li .right p {
  color: #F15A24;
  font-size: 16px;
  font-weight: 700;
}
.top_jirei {
  background-color: #ffffff;
  padding: 60px 40px;
}
.top_jirei_list {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1140px;
  margin: auto;
  margin-bottom: 40px;
}
.top_jirei_item {
  width: 47%;
  margin-right: 20px;
  margin-bottom: 20px;
}
.top_jirei_item a {
 background-color: #fff0d3;
    position: relative;
    /* padding: 20px; */
    box-sizing: border-box;
    padding-bottom: 20px;
    display: block;
    width: 100%;
    transition: 0.5s;
}
.top_jirei_item a:hover {
  opacity: 0.8;
}
.top_jirei_item:nth-child(2n) {
  margin-right: 0px;
}
@media screen and (max-width: 1000px) {
  .top_jirei_item:nth-child(2n) {
    margin-right: auto;
  }
}
.top_jirei_item p {
  font-size: 16px;
	padding: 10px;
	padding-top: 0;
}
.jireibtn{
	background-color: #fbb03b;
	text-align: center;
	padding: 5px 15px;
	color:#ffffff;
	font-weight: 700;
	display: block;
	max-width: 200px;
	border-radius: 15px;
	margin: auto;
}
.jire_corp {
  min-height: 36px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 15px;
  margin-bottom: 10px;
  border-bottom: solid 1px #F15A24;
	margin-top: 20px;
}
.jire_corp .right {
  margin: 0;
  margin-left: 15px;
  flex-shrink: 1;
}
.jire_corp .right p {
  font-size: 14px;
}
body:first-of-type .top_jirei_item h4, .top_jirei_item h4 {
 font-size:18px;
	font-weight: 600;
	padding: 10px;
}
body:first-of-type .top_jirei_item h4 span, .top_jirei_item h4 span {
  color: #F15A24;
  font-size: 18px;
  font-weight: 700;
  display: block;
}
.top_jirei_item .btn {
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  margin: auto;
  width: calc(100% - 40px);
}
.top_flow {
  padding: 60px 40px;
}
.top_flow .inner {
  margin: auto;
  max-width: 1000px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 60px;
}
.top_flow .inner .left {
  margin-right: 30px;
  max-width: 550px;
  flex-shrink: 0;
  width: 100%;
}
.top_flow .inner .right {
  width: 100%;
}
.top_flow .inner .right img {
  margin-top: -13%;
}
.top_column {
  /*background-color: #FFF0D3;    	background-image: url("../img/bg_square.svg");
	background-position: left bottom;
	background-size:  330px auto;
	background-repeat: no-repeat;*/
  padding: 60px 40px;
}
.list_blue a {
  background-color: #FFF0D3;
}
.taglist {
  display: flex;
  align-items: center;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}
.taglist .inner {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.taglist a {
  display: flex;
  min-height: 35px;
  border-radius: 100px;
  background-color: #fff;
  padding: 5px 15px;
  align-items: center;
  justify-content: center;
  width: 150px;
  text-align: center;
  margin: 0 10px;
  margin-bottom: 20px;
  box-shadow: 3px 3px 0px 0px #00b6ac;
}
.taglist a span {
  position: relative;
  display: block;
  padding-left: 15px;
}
.taglist a span:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  bottom: 0;
  top: 0;
  left: 0;
  margin: auto;
  border-left: 7px solid #00b6ac;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-right: 0px solid transparent;
}
.columnlist {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  max-width: 1050px;
  margin: auto;
  margin-bottom: 60px;
  align-items: stretch;
}
.columnlist li {
  margin-right: 20px;
  width: calc(33.33% - 40px / 3);
  display: flex;
  align-items: stretch;
}
.columnlist li:nth-child(3n) {
  margin-right: 0;
}
.columnlist_item {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  background-color: #fff;
  padding: 15px;
  width: 100%;
  box-sizing: border-box;
}
.columnlist_item img {
  margin-bottom: 10px;
  width: 100%;
}
.columnlist_item:hover img {
  opacity: 0.7;
}
.columnlist_item .tag {
  font-size: 12px;
  line-height: 1;
  padding: 5px;
  background-color: #00b6ac;
  color: #fff;
  margin: 0;
  margin-bottom: 10px;
}
.top_event {
  padding: 60px 40px;
  background-color: #FFF0D3;
  padding: 60px 40px;
  background-image: url("../img/bg_square.svg");
  background-position: left bottom;
  background-size: 330px auto;
  background-repeat: no-repeat;
}
.side_title {
  position: absolute;
  left: 10px;
  right: auto;
  top: 0;
  bottom: 0;
  margin: auto 0;
  display: flex;
  max-height: 480px;
  width: 18px;
  height: calc(100% - 80px);
  justify-content: center;
  flex-direction: column;
  z-index: 5;
  color: #F15A24;
}
.side_title:before, .side_title:after {
  content: "";
  height: calc(50% - 2em - 10px);
  background-color: #F15A24;
  width: 1px;
  flex-shrink: 1;
  margin: 0;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}
.side_title:before {
  top: 0;
}
.side_title:after {
  bottom: 0;
}
.side_title p {
  position: relative;
  text-align: center;
  flex-shrink: 0;
  transform: rotate(-90deg);
  height: calc(4em + 20px);
  width: calc(4em + 20px);
  line-height: 1;
  box-sizing: border-box;
  font-weight: 300;
}
.side_title.size3:before, .side_title.size3:after {
  height: calc(50% - 1.5em - 10px);
}
.side_title.size3 p {
  height: calc(3em + 20px);
  width: calc(3em + 20px);
}
.side_title.size5:before, .side_title.size5:after {
  height: calc(50% - 2.5em - 10px);
}
.side_title.size5 p {
  height: calc(5em + 20px);
  width: calc(5em + 20px);
}
.side_title.size7 p {
  height: calc(7em + 20px);
  width: calc(7em + 20px);
}
.side_title.size7:before, .side_title.size7:after {
  height: calc(50% - 3.5em - 10px);
}
.side_title.size11 p {
  height: calc(11em + 20px);
  width: calc(11em + 20px);
}
.side_title.size11:before, .side_title.size11:after {
  height: calc(50% - 5.5em - 10px);
}



.block4 {
  padding: 60px 40px;
  background-color: #FFF0D3;
}
.block4 ul {
  max-width: 650px;
  margin: auto;
}
.block4 li {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  position: relative;
  margin-bottom: 45px;
}
.block4 li:last-child {
  margin-bottom: 0;
}
.block4 li h4 {
  font-size: 22px;
  font-weight: 700;
}
.block4 li .trial {
  border: solid 1px #f7931e;
  color: #f7931e;
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  padding: 10px;
    padding-top: 8px;
    margin-top: 5px !important;
  background-color: #fff;
  display: inline-block;
}
.block4 li:not(:last-child):after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  bottom: -32px;
  left: 0;
  right: 0;
  margin: auto;
  border-top: 20px solid #fbb03b;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
}
.block4 .left {
  width: 140px;
  min-height: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fbb03b;
  flex-shrink: 0;
}
.block4 .right {
  margin-left: 10px;
  background-color: #ffffff;
  padding: 15px;
  box-sizing: border-box;
  flex-shrink: 1;
  width: 100%;
}
.block4 .flowkome{
    max-width: 650px;
    margin: auto;
    margin-top: 30px !important;
	text-align: center;
}
.block5 {
  padding: 60px 40px;
  background-color: #fff;
}


.block4 h3 img, .block5 h3 img {
  height: min(6vw, 36px);
  height: 6vw;
  max-height: 36px;
  flex-shrink: 0;
  margin: 0 20px;
  width: auto;
  display: block;
}
.block5 ul {
  max-width: 1050px;
  margin: auto;
}
.block5 ul li {
  overflow: hidden;
}
.block5 ul li:not(:last-child) {
  margin-bottom: 10px;
}
.qa_q {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  background-color: #fff5e2;
  border-radius: 10px;
  padding-right: 15px;
  box-sizing: border-box;
}
.qa_q > p {
  padding: 10px 20px;
  box-sizing: border-box;
  flex-shrink: 1;
  display: flex;
  align-items: center;
  text-align: left;
  width: 100%;
  font-size: 18px;
  font-weight: 700;
}
.qa_q .plus {
  flex-shrink: 0;
}
.qa_q_icon {
  background-color: #f7931e;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 66px;
  width: 66px;
  flex-shrink: 0;
}
.qa_a_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 66px;
  width: 66px;
  flex-shrink: 0;
}
.qa_q_icon img, .qa_a_icon img {
  height: 32px;
  width: auto;
}
.aco_contents {
  display: none;
}
.qa_a {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  border-radius: 10px;
  background-color: #f2f2f2;
}
.qa_a_text {
  padding: 10px 0;
  padding-right: 20px;
  flex-shrink: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  text-align: left;
}
.qa_a_text p {
  font-size: 18px;
  font-weight: 500;
  width: 100%;
}
.qa_a_text a {
  font-weight: 500;
  color: #f7931e;
  text-decoration: underline;
  display: block;
  margin-top: 10px;
}
.qa_a_text a:hover {
  text-decoration: none;
}
.qa_q .plus {
  width: 25px;
  flex-wrap: nowrap;
  position: relative;
  display: block;
  flex-shrink: 0;
}
.qa_q .plus:before, .qa_q .plus:after {
  content: "";
  display: block;
  width: 25px;
  height:25px;
  
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background-color: #f7931e;
  transition: 0.3s;
}
.qa_q .plus:before {
  width: 3px;
  max-width: 6px;
}
.qa_q.open .plus:before {
  width: 0px;
}
.qa_q .plus:after {
  height: 3px;
  max-height: 6px;
  transition: 0.3s;
}



@media screen and (max-width: 1000px) {
  .function li h4 {
    font-size: 18px;
  }
  .function li {
    width: calc(50% - 10px);
    margin: 0;
    margin-bottom: 20px;
    margin-right: 20px;
  }

  /*.function li:nth-child(2n){
		margin-right: 0;
	}*/
  .top_kadai ul li {
    width: 100%;
    margin-bottom: 20px;
    margin-right: 0px;
  }
  .top_jirei_item {
    width: 70%;
	  margin: auto;
    margin-bottom: 20px;
	  min-width: 300px;
  }
  .top_jirei_item:last-child {
	  margin: auto;
    margin-bottom: 0px;
  }
  body:first-of-type .top_jirei_item h4, .top_jirei_item h4 {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .top_flow .inner {
    flex-direction: column;
  }
  .top_flow .inner .left {
    max-width: none;
    margin-right: 0;
    margin-bottom: 20px;
  }
  .top_flow .inner .right {
    width: 100%;
    margin: 0;
  }
  .top_flow .inner .right img {
    width: 80%;
    margin: auto;
    margin-top: 0;
  }
  .columnlist {
    flex-direction: column;
    width: 100%;
  }
  .columnlist li {
    margin-right: 0px;
    width: 100%;
    margin-bottom: 20px;
  }
  .columnlist li:last-child {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 800px) {
	.topnavi{
		width: 100%;
		display: flex;
		justify-content: space-between;
		box-sizing: border-box;
        display: none;
	}
	
	.topnavi .left{
    width: 40%;
    max-width: 150px;
	}
	.topnavi .right{    display: none;
	}
	.site_navi{
		display:flex;
	}
	.site_navi .inner{
		height: auto;
	}
	.kvundernavi{
	display: none;}
	
	.top_about .inner .right{
		width: 100%;
		padding: 0;
	}
.onayami li h4 {
	height: auto;
}
	.tokucho li{
		flex-direction: column;
    padding: 20px 20px;
	}
	.tokucho li > div.left,
	.tokucho li > div.right{
		width: 100%;
	}
	.tokucho li > div.left{
		margin-bottom: 20px;
	}
	
	.tokucho li.img_right{
		flex-direction: column-reverse;
	}
	.tokucho li.img_right > div.left,
	.tokucho li.img_right > div.right{	
	}
	.tokucho li.img_right > div.left{
		margin-bottom: 0;
	}
	.tokucho li.img_right > div.right{
		margin-bottom: 20px;
		
	}
	ul.kinou{
		display: block;
	}
	ul.kinou li{
		width: 100%;
		margin-bottom: 30px;
	}
	
.check_text {
    padding-left: 30px;
	font-size: 16px;
	}
	.check_text:before {	
    width: 16px;
		height: 16px;
    top: 5px;
	}
	
.block4 .left {
	max-width: 25vw;
	}
	
.block4 li h4 {
	font-size: 18px;
	}
	
.block4 li .trial {
    font-size: 14px;
	padding: 5px;
	}
.qa_a_icon,
.qa_q_icon{
    min-height: 36px;
    width: 36px;
    padding: 5px;
}
.qa_q > p {
	font-size: 16px;
	}
	
.qa_a_text p {
	font-size: 16px;
	}
	
	
	.onayami_pc{
		display: none;
	}
	
	.onayami_sp{
	    max-width: 630px;
		margin: auto;
		width: 70%;
	}
	.onayami_sp .bx-wrapper .bx-viewport{
		overflow: inherit !important;
	}
.bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto {
	bottom: -20px;
}
.bx-wrapper {
    margin: 0px auto 20px;
	}
	.onayami_sp li{
		padding: 10px 4vw;
		box-sizing: border-box;
	}
	body:first-of-type .onayami_item h4{
		font-size: 3.6vw;
		min-height: calc(3.6vw * 4.5 + 20px);
		display: flex;
		align-items: center;
	}
	.onayami_sp li img{
		margin: auto;
	}
	.onayami .onayami_item{
		width: 100%;
		box-sizing: border-box;
		padding: 2vw;
    padding-bottom: 0;
	}
	
}
	
@media screen and (min-width: 801px) {
	.onayami_sp{
		display: none;
	}
}
	
  @media screen and (min-width: 601px) {
    .function li:nth-child(2n) {
      margin-right: 0;
    }
  }
  @media screen and (max-width: 600px) {
    .function li {
      width: 100%;
      margin-right: 0;
      margin: 0 auto;
      margin-bottom: 20px;
      max-width: 700px;
    }
    .function li a {
      width: 100%;
      min-width: 0;
    }
    .function li img {
      display: block;
      margin: auto;
      width: 27%;
    }
  }
@media screen and (max-width: 700px) {
  body:first-of-type h3, h3 {
    font-size: 22px;
    margin-bottom: 30px;
  }
	#toppage section{
    padding: 30px 20px;
  }
	
	
  .side_title {
    position: absolute;
    left: 9px;
    width: 13px;
    height: calc(100% - 80px);
    font-size: 12px;
  }
  .side_title {
    max-height: 400px;
  }
  /*
.function li {
    margin-right: 20px;
	padding: 15px;
    padding-bottom: 56px;
	}
.function li .btn {
    position: absolute;
    left: 0;
    right: 0;
	padding: 0 15px;
	}
.function li .btn a {
    width: 190px;
    max-width: calc(100% - 0px);
    min-width: 0;
    font-size: 12px;
    min-height: 26px;
    display: flex;
    padding: 0px 10px;
	}*/
  .top_kadai .readtext {
    font-size: 16px;
    margin-bottom: 40px;
  }
  .top_kadai ul li .left {
    width: 110px;
  }
  .top_kadai ul li .right p {
    font-size: 16px;
    height: 3em;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .jire_corp {
    flex-direction: column;
  }
  .jire_corp .left {
    margin-bottom: 10px;
  }
  body:first-of-type .top_jirei_item h4 span, .top_jirei_item h4 span {
    color: #F15A24;
    font-size: 18px;
  }
  .top_jirei_item p {
    font-size: 14px;
  }
  .taglist a {
    min-height: 30px;
    padding: 2px 15px;
    min-width: 130px;
    margin: 0 5px;
    margin-bottom: 10px;
    box-shadow: 2px 2px 0px 0px #00b6ac;
    font-size: 12px;
  }
  .taglist a span {
	}
}
  @media screen and (max-width: 400px) {
    .top_kadai ul li .right p {
      font-size: 14px;
    }
  }


.cv_area {
    padding: 60px 10px;
    text-align: center;
    background-color: #ffcc63;
}
.cv_area p {
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
	line-height: 140%;
}
.cv_area p span{
display: inline-block;}
.cv_area .cvbtn {
    max-width: 700px;
    flex-shrink: 0;
    display: flex;
    justify-content: space-between;
    color: #F15A24;
    margin: auto;
    width: 100%;
}
.cv_area .cvbtn a{
	background: #000000;
	padding: 15px 30px 30px 30px;
	color:#ffffff;
	width: 400px;
	border-radius: 90px;
	margin: 10px;
	font-size:20px;
	font-weight: 600;
	position: relative;
	display: block;
	text-align: center;
	 transition: 0.5s;
}
.cv_area .cvbtn a:before{
	
	
    content: "";
    width: 110px;
    height: 4px;
    display: block;
    border-radius: 10px;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 17px;
    position: absolute;
    background: #fbb03b;
    background: -moz-linear-gradient(left, #fbb03b 0%, #fadd00 100%);
    background: -webkit-linear-gradient(left, #fbb03b 0%, #fadd00 100%);
    background: linear-gradient(to right, #fbb03b 0%, #fadd00 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbb03b', endColorstr='#fadd00', GradientType=1);

	
	
	
}
#mainSection .cv_area .cvbtn a:hover{
	background: #ff9800;
    color: #ffffff;
}
@media screen and (max-width: 800px){
	.cv_area .cvbtn {	display: block;}
	.cv_area .cvbtn a{	width: 280px; font-size:18px; margin: auto;margin-top: 30px;box-sizing: border-box;}
}

.kv{
	background-image: url("../img/top/kv_pc.webp");
	background-size: cover;
	background-position: center;
	height: calc(100vh - 80px - 84px);
	position: relative;
}
.kv_logo{
	position: absolute;
	width: 240px;
	left: 60px;
	top: 60px;
}
.kv_title{
	position: absolute;
	width: 540px;
	left: 130px;
	top: 0;
	bottom: 0;
	margin: auto;
}
.kv_simplemenu_btn{
	position: absolute;
	right: 20px;
	bottom: 60px;
	width: 400px;
	background-image: url(../img/simplebanner_bg.svg);
	background-position: center;
	background-size: cover;
	border: solid 5px #fff;
	padding:  15px;
    padding: min(15px, 2vw);
	padding-right: 0;
	transition: 0.5s;
}
.kv_simplemenu_btn:hover{
	transform: translateX(15px);
	opacity: 0.7;
}
.kv_simplemenu_btn p{    margin-bottom: min(2vw, 10px);
	font-weight: 800;
	color: #fff;
    font-size: min(14.6px, 2.4vw);
}
.simplemenu_btn_imgs{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.simplemenu_btn_imgs .simplemenu_white{
	width: 65%;
    max-width: 45vw;
}
.simplemenu_btn_imgs .simplemenu_arrow{
	width: 10%;
	margin-right: 15px;
    transform: translateX(0px);
}
@media screen and (min-width: 1501px){
.kv_logo{
	left: calc(50% - 750px + 60px);
}
.kv_title{
	left: calc(50% - 750px + 130px);
}
}
@media screen and (min-width: 801px) and (max-height: 900px){
.kv_title{
    top: 250px;
	bottom: auto;
	}
}
@media screen and (max-width: 800px){
.kv{
	background-image: url("../img/top/kv_sp.webp");
	position: relative;
        padding: 30px 20px;
        box-sizing: border-box;
        /* padding: 0; */
        height: 170vw; 
        height: 145vw;
}
	
.kv_logo {
        width: 35vw;	
    left: auto;
    right: 5vw;
	top: 5vw;
	}
	
.kv_title {
    left: auto;
    right: 7vw;
    width: 80vw;
        width: 73vw;
    top: 50vw;
	bottom: auto;
	}
.kv_simplemenu_btn {
    width: 90vw;
    left: 5vw;
	bottom: 5vw;
	
        width: 70vw;
        left: 25vw;
	}
}


.cm_area{
	position: relative;
    padding-top: calc(60px + min(15%, 250px));
}

.cm_movie{
    position: absolute;
    top: 60px;
    z-index: 10;
    left: calc(50% - 80px);
    padding-right: 0px;
    width: calc(50% + 40px);
    max-width: 900px;
}
.cm_area .textarea{
	width: 50%;
	z-index: 5;
	background-color: #fce9c5;
	padding: 60px;
	padding-right: 110px;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
    border-radius: 0 0 25px 0;
}
.cm_area .textarea .inner{
	width: 100%;
	max-width: 460px;
}
.cm_area .textarea h3{
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	gap:0.5em;
	justify-content:flex-start;
	font-size: 32px;
}
.cm_area .textarea h3 img{
	width: 1.6em;
	display: block;
}
.cm_area .textarea p{
	font-size: 16px;
	font-weight: 700;
}
.l-main .cm_area .btn_gra{
	margin-top: 30px;
	justify-content: flex-start;
}
.simplemenu_block{
	position: relative;
	border-radius: 10px;
	margin-top: 60px;;
	border: solid 2px #f7931e;
	padding: 20px;
	display: flex;
	gap:2%;
    align-items: center;
}
.tokucho li.simplemenu_block{
	margin-top: calc(2% + 40px);
}
.simplemenu_block h5{
    position: absolute;
    bottom: calc(100% + 2px);
    height: 40px;
    display: flex;
    align-items: center;
    background-color: #f7931e;
    padding: 0 20px;
    border-radius: 10px 10px 0 0;
    color: #fff;
    font-weight: 700;
	font-size: 18px !important;
}

.simplemenu_block .img_block{
	flex-shrink: 0;
    width: 25%;
}
.simplemenu_block .img_block img{
	max-width: 260px;
}
.simplemenu_block .text_block{
}
.simplemenu_block .btn_block{
    flex-shrink: 0;
    max-width: 250px;
    width: 100%;
}
.simplemenu_block .btn_block .btn_gra a{
    padding: 0px 20px;
    border-radius: 50px;
    width: 100%;
    min-height: 40px;
	line-height: 1;
}
@media screen and (max-width: 800px){

	#toppage section.cm_area{
        padding: 30px 0;
        padding-top: calc(30px + 24vw);
	} 
.cm_movie {
    right: 20px;
    top: 30px;
        left: auto;
    width: 85vw;
	max-width: none;
	}
	.cm_area .textarea {
    border-radius: 0 0 25px 0;
    padding: 20px;
    width: 85vw;
    padding-top: calc(20px + 24vw);
}
.cm_area .textarea h3 {
    font-size: min(32px, 7vw);
    justify-content: center;
}
	
.l-main .cm_area .btn_gra {
	justify-content: center;
	}
	.img_right .left{
  order: 2;
	}
	.img_right .right{
  order: 3;
	}
	.simplemenu_block{
    align-items: center;
    flex-direction: column;
  order: 1;
	}
	.simplemenu_block {
		gap: 20px;
		margin-top: 60px;
	}

	.simplemenu_block .img_block{
		max-width: 380px;
        width: 80%;
}
	.simplemenu_block .img_block img{
		max-width: none;
	}
.simplemenu_block h5 {
    border-radius: 10px 10px 0 0;
    font-size: min(18px, 2.8vw) !important;
    padding:  min(0.7em, 10px) 1em;
	height: auto;
    border-radius: 0.7em 0.7em 0 0;
        left: 10px;
	}
}

@media screen and (max-width: 700px){
	
	.cm_area .textarea h3 {
		font-size: 22px;
	}
}