@charset "utf-8";

html {
	font-size: 62.5%;
}
body {
	margin: 0;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:400;
	font-size: 15px;
	font-size: 1.5rem;
	color: #333333;
	background-color:#f7f7f9;
	-webkit-animation: fadeIn 1.5s ease 0s 1 normal;
    animation: fadeIn 1.5s ease 0s 1 normal;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
a {
	color: #3f67a1;
	text-decoration:none;
	margin:0;
	padding:0; 
}
a:hover {
	color: #dc8c2e;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
img {  
	max-width: 100%;  
	height: auto; 
	border: none;
	margin:0;
	padding:0;
	vertical-align:bottom;
}  
li {
	list-style:none;
}
ul {
	margin:0;
	padding:0; 
}
div, h1, h2, h3, h4, ol, ul, li, p, dl, dt, form, span {
	margin:0;
	padding:0;
}
p {
	text-align: justify;
	line-height:1.7em;
}
/*　マウスオーバー半透明  */
.push:hover {
	filter: alpha(opacity=70);
	 -moz-opacity:0.70;
 	opacity:0.70;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
/*リンクボタン青*/
a.link-btn {
	background-color:#3a4a82;
	color:#ffffff;
	padding:20px 40px;
	border-radius:3px;
	text-align:center;
	display:inline-block;
	font-size:18px;
}
/*リンクボタン紫*/
a.linkp-btn {
	background-color:#774a82;
	color:#ffffff;
	padding:20px 40px;
	border-radius:3px;
	text-align:center;
	display:inline-block;
	font-size:18px;
}
/*リンクボタン緑*/
a.linkg-btn {
	background-color:#3A7082;
	color:#ffffff;
	padding:20px 40px;
	border-radius:3px;
	text-align:center;
	display:inline-block;
	font-size:18px;
}
/*リンクボタン白*/
a.linkw-btn {
	border: 1px solid #ffffff;
	color:#ffffff;
	padding:10px 50px;
	border-radius:3px;
	text-align:center;
	display:inline-block;
	font-size:18px;
}
a.linkw-btn:hover {
	background:rgba(255,255,255,0.3);
}

/*ふわっと出てくるフェード*/
.effect-fade {
  opacity : 0;
  transform : translate(0, 45px);
  transition : all 2000ms;
}

.effect-fade.effect-scroll {
  opacity : 1;
  transform : translate(0, 0);
}
/*改行*/
@media screen and (max-width:1000px){
.br_s {
	display:none;
}
}

/* =================================== */
/*　ヘッダーナビ  */
/* =================================== */
#header {
	position:fixed;
	background-color: #ffffff;
	width:100%;
	z-index:9999;
	height:90px;
	box-shadow: 0 0 8px rgba(0,0,0,0.2);
}
#header .logo {
	max-width:200px;
}
#header .contact-btn {
	background-color:#3a4a82;
	color:#ffffff;
	padding:10px 15px;
	border-radius:3px;
}
.header {
  display: flex;
  justify-content: space-between;  
  padding: 10px;
  align-items: center;
}
.nav-button {
  display: none;
}
.nav li {
    display: inline-block;
    margin: 0 10px;
}
.nav-wrap.open {
  display: block;
}
.nav-wrap.close {
  display: none;
}
@media screen and (min-width: 1001px) {
.nav-wrap {
    display: block !important;
  }
}
.content {
  padding: 20px;
}
@media screen and (max-width: 1000px) {
  .nav-button {
    display: block;
    cursor: pointer;
  }
  .nav-wrap {
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    z-index: 10;
    background-color: rgba(38, 43, 66, 0.8);
    width: 100%;
    height: 100%;
  }
    .nav {
      height: 100%;
      position: relative;
      overflow-x: hidden;
      overflow-y: auto;
    }
	.nav a {
		color:#ffffff;
    }
.nav-wrap li {
      display: block;
      margin: 2em;
	  text-align:center;
      
    }
#header .contact-btn {
	background-color:#ffffff;
	color:#3a4a82;
}

  /*メニューボタンのエフェクト*/
  .nav-button,
  .nav-button span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }
  .nav-button {
    z-index: 20;
    position: relative;
    width: 40px;
    height: 36px;
  }
  .nav-button span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #3a4a82;
    border-radius: 4px;
  }
  .nav-button span:nth-of-type(1) {
    top: 0;
  }
  .nav-button span:nth-of-type(2) {
    top: 16px;
  }
  .nav-button span:nth-of-type(3) {
    bottom: 0;
  }
  .nav-button.active span:nth-of-type(1) {
    -webkit-transform: translateY(16px) rotate(-45deg);
    transform: translateY(16px) rotate(-45deg);
	background-color: #ffffff;
  }
  .nav-button.active span:nth-of-type(2) {
    opacity: 0;
  }
  .nav-button.active span:nth-of-type(3) {
    -webkit-transform: translateY(-16px) rotate(45deg);
    transform: translateY(-16px) rotate(45deg);
	background-color: #ffffff;
  }
}
/* =================================== */
/*　トップページ  */
/* =================================== */
#index-image {
	background: -moz-linear-gradient(left, #3f67a1, #3a4a82);
	background: -webkit-linear-gradient(left, #3f67a1, #3a4a82);
	background: linear-gradient(to right, #3f67a1, #3a4a82);
	color:#ffffff;
}
#index-image img {
	width:100%;
}
#index-image .index-text {
	padding:30px;
	box-sizing:border-box;
}
#index-image .index-text p {
	text-align:left;
	padding-bottom:30px;
	line-height:2em;
	font-size:17px;
	font-size:1.7rem;
}
#index-image .index-text img {
	max-width:330px;
	padding:0 0 20px 40px;
}
#index-image .top-button {
	padding:10px 0 0 50px;
}
@media screen and (max-width: 640px) {
#index-image .index-text img {
	max-width:100%;
	padding:0 0 20px 0;
}
#index-image .index-text {
	padding: 0 10px 30px 10px;
}
#index-image .index-text p {
	font-size:15px;
	font-size:1.5rem;
}
#index-image .top-button {
	padding-left:0;
	text-align:center;
}
}

/* ----------------------------------- */
/*　共通  */
/* ----------------------------------- */
#index-contents {
	clear: both;
}
#index-contents .container {
	max-width: 1200px;
	margin:0 auto;
	padding:100px 10px;
}
#index-contents .top-contents {
	padding-top:100px;
}
#index-contents h2 {
	font-size:40px;
	font-size:4.0rem;
	padding-bottom:40px;
	text-align:center;
	font-weight:500;
	color:#3a4a82;
}
@media screen and (max-width:760px){
#index-contents h2 {
	font-size:25px;
	font-size:2.5rem;
}
}
#index-contents h3 {
	font-size: 20px;
	font-size: 2.0rem;
	padding-bottom:30px;
	font-weight:400;
	color:#3a4a82;
}

/* ----------------------------------- */
/*　indexイメージ  */
/* ----------------------------------- */
#index-image {
	padding-top:90px;
}
#index-image .container {
	max-width: 1200px;
	margin:0 auto;
	padding:50px 10px;
}
/* ----------------------------------- */
/*　3つのポイント  */
/* ----------------------------------- */
#top-point .container {
	max-width: 1000px;
	margin:0 auto;
	padding:50px 10px;
}
#top-point .point {
	text-align:center;
	margin:15px;
	padding:30px;
	background-color:#ffffff;
	height:100%;
}
#top-point .point h3 {
	padding-bottom:20px;
}
#top-point .point img {
	max-width:150px;
}
#top-point .point p {
	font-size: 13px;
	font-size: 1.3rem;
	text-align:center;
}
#top-point .point-catch {
	text-align:center;
	padding:3px 20px;
	background-color:#dc8c2e;
	color:#ffffff;
	border-radius:20px;
	margin-bottom:10px;
	display:inline-block;
}
/* ----------------------------------- */
/*　うららの星占いウィジェット  */
/* ----------------------------------- */
#top-fortune {
	max-width:1100px;
	margin:100px auto;
	background-color:#3a4a82;
	border-radius:10px;
	padding:40px 40px 10px 10px;
	box-sizing:border-box;
	color:#ffffff;
}
#top-fortune .widget-content {
	width: 580px;
	height: 100%;
}
@media screen and (max-width:1000px){
#top-fortune {
	margin:50px 10px;
	padding:10px 10px 10px 10px;
}	
}
#top-fortune .twitter-memo {
	text-align:center;
	padding-top:5px;
	font-size: 12px;
	font-size: 1.2rem;
}
@media screen and (max-width:640px){
#top-fortune .widget-content {
	width: 100%;
	height: 100%;
}
}
/* ----------------------------------- */
/*　ラインナップ  */
/* ----------------------------------- */
#lineup {
	background-color:#ffffff;
	/*background:linear-gradient(90deg,#EBF0F2 0%,#EBF0F2 33%,#ebedf2 33%,#ebedf2 67%,#f1edf2 67%,#f1edf2 100%)*/
	/*background:linear-gradient(90deg,#ebedf2 0%,#ebedf2 50%,#f1edf2 50%,#f1edf2 100%);*/
}
#lineup .lineup-horoscope a.horoscope {
	background-color:#3a95a8;
	color:#ffffff;
	padding: 20px;
	border-radius: 5px;
	text-align: center;
	display: inline-block;
	width:100%;
	box-sizing:border-box;
}
#lineup .lineup-index a.index {
	background-color:#3A7082;
	color:#ffffff;
	padding: 20px;
	border-radius: 5px;
	text-align: center;
	display: inline-block;
	width:100%;
	box-sizing:border-box;
}
#lineup .lineup-sns a.sns {
	background-color:#3a4a82;
	color:#ffffff;
	padding: 20px;
	border-radius: 5px;
	text-align: center;
	display: inline-block;
	width:100%;
	box-sizing:border-box;
}
#lineup .lineup-original a.original {
	background-color:#774a82;
	color:#ffffff;
	padding: 20px;
	border-radius: 5px;
	text-align: center;
	display: inline-block;
	width:100%;
	box-sizing:border-box;
}
#lineup .btnsee {
	font-size: 12px;
	font-size: 1.2rem;
	position: relative;
    padding: 0 0 0 20px;
}
#lineup .btnsee::before {
	content: "";
    width: 5px;
    height: 5px;
    position: absolute;
    top: 5px;
    left: 0;
    margin: auto;
    box-sizing: border-box;
    border: 4px solid transparent;
    border-left: 6px solid #ffffff;
}
#lineup .lineup-horoscope ,
#lineup .lineup-index ,
#lineup .lineup-sns ,
#lineup .lineup-original {
	padding:20px;
	text-align:center;	
}
@media screen and (max-width:1000px){
#lineup .lineup-horoscope ,
#lineup .lineup-index ,
#lineup .lineup-sns ,
#lineup .lineup-original {
	padding:10px;	
}
}
#lineup .lineup-horoscope p ,
#lineup .lineup-index p ,
#lineup .lineup-sns p ,
#lineup .lineup-original p {
	text-align:center;
	padding-bottom:20px;
	font-size: 14px;
	font-size: 1.4rem; 
}
#lineup .lineup-horoscope h3 ,
#lineup .lineup-index h3 ,
#lineup .lineup-sns h3 ,
#lineup .lineup-original h3 {
	font-size: 23px;
	font-size: 2.3rem;
	font-weight:500;
	color:#ffffff;
	border-bottom:1px solid #ffffff;
	padding-bottom:10px;
	margin-bottom:20px;
}
@media screen and (max-width:760px){
#lineup .lineup-horoscope h3 ,
#lineup .lineup-original h3 ,
#lineup .lineup-index h3 ,
#lineup .lineup-sns h3 {
	font-size:20px;
	font-size:2.0rem;
}
}
@media screen and (max-width:640px){
#lineup .lineup-sns ,
#lineup .lineup-original {
	padding-top:30px;
}
}

/* ----------------------------------- */
/*　サービス  */
/* ----------------------------------- */
#top-service .service-contents {
	margin-bottom:50px;
}
#top-service h3 {
	font-size:25px;
	font-size:2.5rem;
	font-weight:500;
}
#top-service .service-image {
	background-color:#ffffff;
	text-align:center;
	padding:20px;
	margin:30px;
}
#top-service .service-text {
	padding:30px;
}
#top-service .service-link {
	text-align:center;
	padding-top:50px;
}
@media screen and (max-width: 640px) {
#top-service .service-image {
	padding:10px;
	margin:10px;
}
#top-service .service-text {
	padding:10px;
}
#top-service .service-link {
	padding-top:20px;
}
/*順番入れ替え*/
#top-service .recruit-contents { 
	flex-direction: column;
}
#top-service .order1 {
  order: 1;
}
#top-service .order2 {
  order: 2;
}
}

/* ----------------------------------- */
/*　新着情報  */
/* ----------------------------------- */
#top-news {
	max-width:1000px;
	margin:0 auto;
	padding:0 10px;
}
#top-news ul li {
	padding:15px 0;
	border-bottom:1px solid #CCC;
}
#top-news .news-cat {
	padding: 1px 5px;
	background-color:#e8ae45;
	margin-left:10px;
	color:#ffffff;
	font-size: 13px;
	font-size: 1.3rem; 
}
#top-news .news-day {
	width:200px;
	display:inline-block;
}
@media screen and (max-width: 640px) {
#top-news .news-day {
	display:block;
	padding-bottom:5px;
}
}

/* =================================== */
/*　フッター  */
/* =================================== */

/* ----------------------------------- */
/*　お問い合わせ  */
/* ----------------------------------- */
#footer-contact {
	background: -moz-linear-gradient(left, #3f67a1, #3a4a82);
	background: -webkit-linear-gradient(left, #3f67a1, #3a4a82);
	background: linear-gradient(to right, #3f67a1, #3a4a82);
	text-align:center;
	padding:50px 10px;
	margin-top:100px;
}
#footer-contact p {
	color:#ffffff;
	text-align:center;
	padding-bottom:30px;
	font-size: 17px;
	font-size: 1.7rem;
	line-height:2em;
}
@media screen and (max-width: 640px) {
#footer-contact p {
	font-size: 14px;
	font-size: 1.4rem; 
}
}

#footer-wrapper {
	background-color:#EAF5DF;
	padding-top:120px;
}
#footer {
	max-width: 1200px;
	margin:30px auto 10px auto;
	padding:0 10px;
	color:#3a4a82;
}
#footer ul {
	padding-bottom:10px;
}
#footer ul li {
	padding-top:5px;
}
#footer .logo {
	max-width:200px;
	margin-bottom:10px;
}
#footer .footer-cp {
	max-width:100%;
}
#footer .footer-cp p {
	padding-bottom:5px;
}

.copyright {
	font-size: 11px;
	font-size: 1.1rem; 
	text-align:center;
	padding-top:20px;
}
@media screen and (max-width:640px){
	
}


/*　トップへ戻るスクロール  */


/* ----------------------------------- */
/*　グリッドレイアウト  */
/* ----------------------------------- */
.row_center {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	align-items: center;
}
.row {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.row_center .column-2,
.row .column-2 {
    width: 50%;
	overflow:hidden;
}
.row_center .column-3,
.row .column-3 {
    width: 33.33333%;
	overflow:hidden;
}
.row_center .column-4,
.row .column-4 {
    width: 25%;
	overflow:hidden;
}
.row .grid-4 {
	width: 25%;
	overflow:hidden;
}
.row .grid-5 {
	width:41.66666%;
	overflow:hidden;
}
.row .grid-7 {
	width:58.33333%;
	overflow:hidden;
}
.row .grid-8 {
	width: 75%;
	overflow:hidden;
}
@media screen and (max-width:640px){
.row_center {
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}
.row {
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}
.row_center .column-2,
.row .column-2 {
    width: 100%;
	overflow:hidden;
	padding:5px 0;
}
.row_center .column-3,
.row .column-3 {
    width: 100%;
	overflow:hidden;
	padding:5px 0;
}
.row_center .column-4,
.row .column-4 {
    width: 100%;
	overflow:hidden;
	padding:5px 0;
}
.row .grid-4 ,
.row .grid-7 ,
.row .grid-5 ,
.row .grid-8 {
	width: 100%;
	overflow:hidden;
	padding:5px 0;
}
}