@charset "UTF-8";
/* CSS Document */
/*--------------------------
      header
----------------------------*/
body {
    min-width:1280px;
}
@media screen and (max-width: 640px) {
    body {
        min-width:0;
    }
}
img {max-width:100%;}
.sq-header {
  position: fixed;
  height: 68px;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  transition: background 0.3s;
  min-width: 1280px;
  z-index: 100;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.6em;
  font-weight: 500;
}
@media screen and (max-width: 640px) {
  .sq-header {
    min-width: 0;
    height: 55px;
    font-size: 12px;
    line-height: 1.6em;
  }
}
@media screen and (max-width: 640px) {
  .sq-header {
	  background:none;
	}
}
.sq-header_inner {
  display: flex;
  padding: 15px 40px 15px 40px;
  align-items:center;
  position:relative;
	overflow:hidden;
}
@media screen and (max-width: 640px) {
  .sq-header_inner {
    padding: 20px 20px 0 20px;
    align-items: center;
  }
}
.sq-header.scrolled {
	background-image: -moz-linear-gradient(36deg, rgba(79,90,254,1) 0%, #585ef5 100%);
    background-image: -webkit-linear-gradient(36deg, rgba(79,90,254,1) 0%, #585ef5 100%);
    background-image: -ms-linear-gradient(36deg, rgba(79,90,254,1) 0%, #585ef5 100%);
	background-color:rgba(79,90,254,1);
	height:auto;
}
@media screen and (max-width: 640px) {
	.sq-header.scrolled .sq-header_inner{
		 padding: 10px 20px 10px 20px;
	}
}
.sq-header .logo {
    position:relative;
    bottom:2px;
	z-index:2;
}
.sq-header .logo svg{
    transition:0.3s;
}
.sq-header.scrolled .logo svg {
	width:35px;
	height:35px;
	transition:0.3s;
}
@media screen and (max-width: 640px) {
  .sq-header .logo {
    max-width: 146px;
    position:static;
  }
  .sq-header .logo img {
    max-width: 100%;
  }
}
.sq-header .logo path{
	fill:#fff;
	transition:all 0.3s;
}
@media screen and (max-width: 640px) {
	.sq-header .logo svg{
		width:36px;
		height:36px;
	}
}
.sq-header.scrolled .logo path{
}
.sq-header .logo a {
    transition:all 0.3s;
}
.sq-header .logo a:hover{
    opacity:0.7;
}
.sq-header .globalmenu-wrap {
  margin-left: auto;
  font-size: 1.125rem;
}
@media screen and (max-width: 1920px) {
	.sq-header .globalmenu-wrap {
		font-size: 0.925rem;
	}
}
@media screen and (max-width: 640px) {
  .sq-header .globalmenu-wrap {
    width: 60%;
    position: fixed;
    top: 0;
    background-image: -moz-linear-gradient(36deg, rgba(79, 90, 254, 1) 0%, #585ef5 100%);
    background-image: -webkit-linear-gradient(36deg, rgba(79, 90, 254, 1) 0%, #585ef5 100%);
    background-image: -ms-linear-gradient(36deg, rgba(79, 90, 254, 1) 0%, #585ef5 100%);
    background-color: rgba(79, 90, 254, 1);
    right: 0;
    height: 100vh;
    z-index: 100;
    overflow-y: scroll;
    padding: 20px 0;
	display:none;
	  font-size: 1rem;
  }
}
.sq-header .globalmenu_inner {
  display: flex;
  align-items: center;
  list-style-type:none;
}
@media screen and (max-width: 640px) {
  .sq-header .globalmenu_inner {
    display: block;
    /*padding: 100px 15px 30px;*/
	   padding: 60px 15px 30px;
  }
}
.sq-header .globalmenu_inner li {
	margin-left: 40px;
	text-align:left;
}
@media screen and (max-width: 1920px) {
	.sq-header .globalmenu_inner li {
		margin-left: 30px;
	}
}
@media screen and (max-width: 640px) {
  .sq-header .globalmenu_inner li {
    text-align: center;
    margin: 0;
    padding: 0;
    font-size: 1em;
    line-height: 1em;
	  margin-bottom:20px;
  }
  .sq-header li.globalmenu_search, li.globalmenu_link {
    margin: 20px;
  }
  .sq-header li.globalmenu_search {
    margin: 0;
  }
}
@media screen and (max-width: 640px) {
    .sq-header .globalmenu_search_inner {
        padding:0 20px;
    }
}
.sq-header .globalmenu_inner li a {
  transition: 0.3s;
  text-decoration:none;
	color:#fff;
	display:inline-block;
	line-height:1.4em;
}
@media screen and (max-width: 640px) {
  .sq-header .globalmenu_inner li a {
    /*padding: 20px 0;*/
	  padding: 15px 0;
    display: inline-block;
  }
    .sq-header .globalmenu_inner li a span{
        display:inline-block;
        position:relative;
    }
}
.sq-header.scrolled .globalmenu_inner li a {
}
.sq-header .globalmenu_inner_apply {
	border-radius:200px;
	border:2px solid #fff;
	padding:5px 20px;
	min-width:113px;
}
@media screen and (max-width: 640px) {
	.sq-header .globalmenu_inner_apply {
		padding:14px 20px !important;
	}
}
.sq-header.scrolled .globalmenu_search_inner {
    background:url("../img/ico-lupe.svg") no-repeat left center / contain;
}
.sq-header li.globalmenu_search a, .sq-header li.globalmenu_link a {
  border: 2px solid #fff;
  border-radius: 50px;
  line-height: 1em;
  padding: 10px 10px;
  width: 102px;
  text-align: center;
  display: inline-block;
  font-size: 0.75em;
  box-sizing:border-box;
  ;
}
.sq-header li.globalmenu_search a:hover, .sq-header li.globalmenu_link a:hover {
    opacity:0.6;
}
@media screen and (max-width: 640px) {
  .sq-header li.globalmenu_search a, .sq-header li.globalmenu_link a {
    border: 2px solid #000;
    margin: 0 auto;
    display: block;
    width: 100%;
    padding: 10px;
    font-size: 0.85em;
  }
  .sq-header li.globalmenu_search {
    padding-top: 20px;
  }
}
.sq-header.scrolled li.globalmenu_search a, .sq-header.scrolled li.globalmenu_link a {
  border: 2px solid #000;
}
.sq-header .globalmenu li.globalmenu_link {
  margin-left: 20px;
}
@media screen and (max-width: 640px) {
  .sq-header .globalmenu li.globalmenu_link {
    display: none;
  }
}
@media screen and (max-width: 640px) {
  .sq-header .btn-spmenu {
    width: 38px;
    height: 26px;
    position: relative;
	z-index:101;
    margin-left: auto;
  }
  .sq-header .btn-spmenu span {
    display: inline-block;
    position: absolute;
    height: 2px;
    width: 38px;
    background: #fff;
    transition: all 0.3s;
    margin: auto;
    left: 0;
    right: 0;
  }
	.sq-header.scrolled .btn-spmenu span{
	}
  .sq-header .btn-spmenu span:nth-of-type(1) {
    top: 0;
  }
	.sq-header .btn-spmenu.is-active span {
		background:#fff;
	}
  .sq-header .btn-spmenu.is-active span:nth-of-type(1) {
    transform: rotate(45deg);
    top: 12px;
  }
  .sq-header .btn-spmenu span:nth-of-type(2) {
    top: 12px;
  }
  .sq-header .btn-spmenu.is-active span:nth-of-type(2) {
    opacity: 0;
  }
  .sq-header .btn-spmenu span:nth-of-type(3) {
    top: 24px;
  }
  .sq-header .btn-spmenu.is-active span:nth-of-type(3) {
    transform: rotate(-45deg);
    top: 12px;
  }
}
/*--------------------------
      common
----------------------------*/
html {
  font-family:'Noto Sans JP', sans-serif;
}
@media screen and (max-width: 640px) {
  html {
  }
}
body {
	font-size:1.125rem;
	letter-spacing: 0.1em;
	line-height:normal;
}
@media screen and (max-width: 640px) {
    body {
		font-size:0.875rem;
		letter-spacing: 0.05em;
    }
}
.square_cp .wrapper {
  position: relative;
  min-width: 1280px;
	overflow:hidden;
}
@media screen and (max-width: 640px) {
  .square_cp .wrapper {
    min-width: 0;
    background:none;
  }
}
ul, ol {
  list-style-type: none;
  padding: 0;
}
.pc {
  display: inline-block;
}
@media screen and (max-width: 640px) {
  .pc {
    display: none;
  }
}
.sp {
  display: none;
}
@media screen and (max-width: 640px) {
  .sp {
    display: inline-block;
  }
}
.square_cp {
	background:#f8f7f7;
}
.square_cp .small {
	font-size:0.875em;
}
.square_cp .text_link {
  text-decoration: underline;
}
.square_cp .text_link:hover {
  text-decoration: none;
    opacity:1;
}
.square_cp .btn-base {
	border-radius:200px;
	height:80px;
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
	transition:0.3s;
	max-width:720px;
	margin:0 auto;
	box-shadow: 0px 8px 18px 0px rgba(0, 0, 0, 0.22);
}
@media screen and (max-width: 640px) {
	.square_cp .btn-base {
		height:60px;
	}
}
.square_cp .btn-base:hover {
	opacity:0.7;
}
.square_cp .btn-base::after {
	content:"";
	display:block;
	width:10px;
	height:10px;
	border-top:3px solid #30549C;
	border-right:3px solid #30549C;
	transform:rotate(45deg);
	position:absolute;
	top:0;
	bottom:0;
	right:20px;
	margin:auto;
}
@media screen and (max-width: 640px) {
	.square_cp .btn-base::after {
		width:8px;
		height:8px;
		border-top:2px solid #30549C;
		border-right:2px solid #30549C;
		right:15px;
	}
}
.square_cp .btn-secondary {
	background:linear-gradient(to right, #F23BA1,#A28BD2,#18AAEC);
	color: #30549C;
	padding:3px;
	color:#30549C;
	font-weight: bold;
	max-width:368px;
	height:60px;
	margin:24px 0 0;
	box-sizing:border-box;
}
@media screen and (max-width: 640px) {
	.square_cp .btn-secondary {
		min-height:39px;
		height:auto;
	}
}
.square_cp .btn-secondary_inner {
	width:100%;
	height:100%;
	display:flex;
	justify-content: center;
	align-items: center;
	background:#fff;
	border-radius:200px;
	min-height:45px;
}
.square_cp .btn-simple {
	background:#fff;
	color:#181818;
	max-width:368px;
	height:60px;
}
@media screen and (max-width: 640px) {
	.square_cp .btn-simple {
		max-width: 76%;
		min-height: 40px;
		height:auto;
	}
}
.square_cp .btn-simple::after {
	border-color:#181818;
}
.square_cp .mt-5 {
	margin-top:5px !important;
}
.square_cp .mt-15 {
	margin-top:15px !important;
}
.square_cp .mt-40 {
	margin-top:40px !important;
}
@media screen and (max-width: 640px) {
	.square_cp .mt-40 {
		margin-top:20px !important;
	}
}
/*--------------------------
      credit
----------------------------*/
.square_cp .credit {
	letter-spacing:norma;
	text-align:center;
	color:#515151;
	font-size:0.75rem;
	padding:0 20px;
}
.square_cp .credit small{
	padding:0;
	text-indent:0;
}
/*--------------------------
      footer
----------------------------*/
.square_cp .footer {
	margin-top:40px;
	background:#000;
	color:#fff;
	font-size:1rem;
	text-align:center;
	padding:100px 20px 40px;
}
@media screen and (max-width: 640px) {
	.square_cp .footer {
		font-size:0.75rem;
		line-height:1.6em;
		padding:50px 20px 20px;
	}
}
.square_cp .footer_inner {
	max-width:1200px;
	margin:0 auto;
}
.square_cp .footer_logo {
	margin-bottom:70px;
}
@media screen and (max-width: 640px) {
	.square_cp .footer_logo {
		width:58px;
		margin-bottom:40px;
	}
}
.square_cp .contact_head {
	margin-bottom:25px;
}
.square_cp .contact_item {
	margin-bottom:15px;
}
.square_cp .contact_item a{
	text-decoration:underline;
}
.square_cp .contact_item a:hover{
	text-decoration:none;
}
.square_cp .footer_bnr {
	display:flex;
	justify-content:space-between;
	margin-top:80px;
}
@media screen and (max-width: 640px) {
	.square_cp .footer_bnr {
		display:block;
		margin-top:60px;
	}
	.square_cp .footer_bnr a{
		display:inline-block;
		margin-bottom:20px;
	}
}

.square_cp .footer_sns {
	margin-top:100px;
}
@media screen and (max-width: 640px) {
	.square_cp .footer_sns {
		margin-top:40px;
	}
}
.square_cp .footer_sns_head {
	width:100%;
	margin-bottom:25px;
	font-size:1.5rem;
}
@media screen and (max-width: 640px) {
	.square_cp .footer_sns_head {
		font-size:1rem;
		margin-bottom:20px;
	}
}
.square_cp .footer_sns_inner {
	display:flex;
	justify-content:space-between;
}
@media screen and (max-width: 640px) {
	.square_cp .footer_sns_inner {
		display:block;
	}
}
.square_cp .footer_sns_item a{
	display:flex;
	align-items:center;
	line-height:1.4em;
	width:375px;
	border:1px solid #fff;
	padding:25px 40px;
	text-align:left;
	font-size:0.875rem;
	letter-spacing:normal;
	min-height:100px;
}
@media screen and (max-width: 640px) {
	.square_cp .footer_sns_item a{
		min-height:0;
		width:100%;
		padding:24px;
		margin-bottom:10px;
		font-size:0.625rem;
		line-height:1.4em;
	}
}
.square_cp .footer_sns_icon {
	margin-right:30px;
}
@media screen and (max-width: 640px) {
	.square_cp .footer_sns_icon {
		margin-right:24px;
	}
}
.square_cp .footer_sns_icon-x {}
.square_cp .contact_item-exter {
	position:relative;
}
.square_cp .ico-window {
	display:inline-block;
	vertical-align:middle;
	font-size:0;
	width:15px;
	height:15px;
	background:url("../img/link_icon.png") no-repeat center / contain;
	margin-left:4px;
}

.square_cp .btn-top a{
	background-color: rgba(192,29,106,0.8);
    background-image: -moz-linear-gradient( 31deg, rgba(246,54,113,0.8) 0%, rgba(197,74,201,0.8) 100%);
  background-image: -webkit-linear-gradient( 31deg, rgba(246,54,113,0.8) 0%, rgba(197,74,201,0.8) 100%);
  background-image: -ms-linear-gradient( 31deg, rgba(246,54,113,0.8) 0%, rgba(197,74,201,0.8) 100%);
	color:#fff;
	letter-spacing:normal;
	height:140px;
	width:140px;
	font-size:1rem;
	display:flex;
	position:fixed;
	right:0;
	z-index:10;
	align-items:center;
	justify-content:center;
	border-radius:20px 0 0 0;
	text-align:center;
	transition:0.3s;
	bottom:0;/*jsで出現するように調整*/
}
.square_cp .btn-top a.sitetop{
	background-image: -moz-linear-gradient(-23deg, rgb(68, 37, 144) 0%, rgb(69, 56, 218) 100%);
    background-image: -webkit-linear-gradient(-23deg, rgb(68, 37, 144) 0%, rgb(69, 56, 218) 100%);
    background-image: -ms-linear-gradient(-23deg, rgb(68, 37, 144) 0%, rgb(69, 56, 218) 100%);
	border-radius:20px 20px 0 0;
	right:140px;
}
@media screen and (max-width: 1600px) {
	.square_cp .btn-top a{
		height:100px;
		width:100px;
		font-size:0.875rem;
	}
	.square_cp .btn-top a.sitetop{
		right:100px;
	}
}
@media screen and (max-width: 640px) {
	.square_cp .btn-top a{
		font-size:0.625rem;
		height:70px;
		width:70px;
		border-radius:15px 0 0 0;
	}
	.square_cp .btn-top a.sitetop{
		right:70px;
		border-radius:15px 15px 0 0;
	}
}
.square_cp .footer_rights {
	font-weight:normal;
	padding:80px 0 0;
	letter-spacing: normal;
}
@media screen and (max-width: 640px) {
	.square_cp .footer_rights {
		padding:40px 0 0;
	}
}
.square_cp .footer_rights small{
	font-size:0.625rem;
	line-height:1.4em;
}


.square_cp .fin {
	position:relative;
}
.square_cp .fin::after{
	content:"";
	display:block;
	opacity: 0.7;
	background: #363636;
	position:absolute;
	left:0;
	top:0;
	z-index:2;
	height: 100%;
    width: 100%;
}
.square_cp .attention,
.square_cp .information{
	text-align:left;
	font-size:0.875rem;
	line-height:1.4em;
}
.square_cp .attention_head {
	margin:0 0 5px;
}
.square_cp .attention_text {
	padding:0;
	margin:0;
}
.square_cp .attention small,
.square_cp .information small,
.square_cp .information li{
	display:block;
	padding-left:1em;
	text-indent: -1em;
	font-size:1em;
	line-height:1.4em;
}
@media screen and (max-width: 640px) {
	.square_cp .attention small,
	.square_cp .information small,
	.square_cp .information li{
		font-size:0.875em;
		line-height:1.4em;
	}
}
.square_cp .attention li,
.square_cp .information li{
	margin-bottom:5px;
}
.square_cp .information {
	border:1px solid #000;
	padding:20px;
	margin-top:20px;
}
@media screen and (max-width: 640px) {
	.square_cp .information {
		padding:10px;
	}
}