@charset "utf-8";
/*
-------------------------------------
CSS file A-link
FileName:top.css
-------------------------------------
*/
/*スライダー*/
#slider_area{
	width:100%;
	text-align:center;
	box-sizing:border-box;
	padding:40px 0;
	overflow:hidden;
}
/*スライダー追加分*/

/*左右の矢印の色を変える*/
.slick-prev:before,
.slick-next:before {
    color: #000;
}
/*左右の矢印の位置を変える*/
.slick-next {
    right: 20px;
    z-index: 99;
}
.slick-prev {
     left: 15px;
    z-index: 100;
}
/*スライド数のドットの色を変える*/
.slick-dots li.slick-active button:before,
.slick-dots li button:before {
    color: #fff;
}
/*スライド画像の横幅可変*/
.slider li a {
     outline:none;
}
.slider li a img {
    max-width: 100%;
     height: auto;
}
.slider{
  display: none;
}
.slider.slick-initialized{
  display: block; /*slick-initializedが付与されたら表示*/
}

/*スライダー下*/
#info_area{
	width:100%;
	padding:20px 0;
	text-align:center;
}
@media screen and (max-width: 320px){
.info_box{
	width:92%;
	margin:0 auto;
    display: inline-block;
}
.info_txt_box{
    text-align:left;
    width:71%;
    display: inline-block;
}
.info_txt_box h2{
	font-size:0.8125rem;
	line-height:1.5;
	text-align:left;
	font-weight:normal;
}
.info_sns_box{
	width:12%;
    margin-left:1%;
    display: inline-block;
}
.info_sns_box img{
	width: 100%;
	height: auto;
}
}
@media screen and (min-width:321px) and ( max-width:560px) {
.info_box{
	width:96%;
	margin:0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:center;
    justify-content: center;
}
　
.info_txt_box{
	display: block;
	width:72%;
    margin-right:4%;
	text-align:left;
	display: inline-block;
}
.info_txt_box h2{
	font-size:0.8125rem;
	line-height:1.5;
	text-align:left;
	font-weight:normal;
}
.info_sns_box{
	width:8.5%;
    margin-left:0.5%;
	display: inline-block;
}
.info_sns_box img{
	width: 100%;
	max-width:36px;
	height: auto;
}
}
@media screen and (min-width:561px) and ( max-width:999px) {
.info_box{
	width:82%;
	max-width:760px;
	margin:0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:center;
    justify-content: center;
    -webkit-align-items:center;
    align-items:center;
}
.info_txt_box{
	width:85%;
    text-align:left;
    display: inline-block;
}
.info_txt_box h2{
	font-size:0.8125rem;
	line-height:1.5;
	font-weight:normal;
}
.info_sns_box{
    width:6%;
    margin-left:0.5%;
    display: inline-block;
}
.info_sns_box img{
	width: 100%;
	max-width:34px;
	height: auto;
}
}
@media screen and (min-width: 1000px){
.info_box{
	width:68%;
	max-width:710px;
	margin:0 auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
.info_txt_box{
	width:85%;
    text-align:left;
    display: inline-block;
}
.info_txt_box h2{
	font-size:0.875rem;
	line-height:1.5;
	font-weight:normal;
}

.info_sns_box{
    width:5%;
    max-width:34px;
    margin-left:1%;
    display: inline-block;
}
.info_sns_box img{
	width: 100%;
	height: auto;
}
}
.info_txt_box p{
	font-size:0.8125rem;
	line-height:1.5;
	text-align:left;
	font-weight:normal;
	margin-top:7px;
}

/*a-linkとは　ワークスリスト*/
@media screen and (max-width: 560px){
ul.top_about_works{
	width:96%;
	margin:0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
}
ul.top_about_works li{
	width:100%;
	display:block;
	margin-bottom:6px;
	border:1px #ddd solid;
	border-radius: 23px;
	padding:5px;
	font-size:0.875rem;
	background:#fff;
}
}
@media screen and (min-width:561px) and ( max-width:767px) {
ul.top_about_works{
	width:100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
}
ul.top_about_works li{
	width:88%;
	display:block;
	margin-bottom:6px;
	border:1px #ddd solid;
	border-radius: 23px;
	padding:5px;
	font-size:0.875rem;
	background:#fff;
}
}
@media screen and (min-width:768px) and ( max-width:999px) {
ul.top_about_works{
	width:100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap : wrap;
	flex-wrap: wrap;
}
ul.top_about_works li{
	width:46.5%;
	display:block;
	margin-bottom:6px;
	border:1px #ddd solid;
	border-radius: 23px;
	padding:5px;
	font-size:0.8125rem;
	background:#fff;
}
}
@media screen and (min-width: 1000px){
ul.top_about_works{
	width:100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap : wrap;
	flex-wrap: wrap;
}
ul.top_about_works li{
	width:46%;
	display:block;
	margin-bottom:6px;
	border:1px #ddd solid;
	border-radius: 23px;
	padding:5px;
	font-size:0.875rem;
	background:#fff;
}
}
ul.top_about_works li a{
	width:100%;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	line-height:1.3;
	color:#777;
	text-decoration:none;
}
ul.top_about_works li a img{
	vertical-align:bottom;
	margin-right:8px;
	width:34px;
	height:auto;
}
ul.top_about_works li:hover{
	background:#e9fec8;
}


/*エディトリアルデザイン*/
@media screen and (max-width: 560px){
ul.top_editorial_img{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
}
ul.top_editorial_img li{
	width:100%;
}
ul.top_editorial_img li img{
	width:100%;
	height:auto;
}
/*エディトリアル写真小*/
ul.top_editorial_sub_img{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap : wrap;
	flex-wrap: wrap;
}
ul.top_editorial_sub_img li{
	width:49%;
}
ul.top_editorial_sub_img li img{
	width:100%;
	height:auto;
}
}

@media screen and (min-width:561px) and ( max-width:768px) {
ul.top_editorial_img{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
}
ul.top_editorial_img li{
	width:100%;
}
ul.top_editorial_img li img{
	width:100%;
	height:auto;
}
/*エディトリアル写真小*/
ul.top_editorial_sub_img{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap : wrap;
	flex-wrap: wrap;
}
ul.top_editorial_sub_img li{
	width:49%;
}
ul.top_editorial_sub_img li img{
	width:100%;
	height:auto;
}
}

@media screen and (min-width:769px) and ( max-width:999px) {
ul.top_editorial_img{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap : wrap;
	flex-wrap: wrap;
}
ul.top_editorial_img li{
	width:49%;
}
ul.top_editorial_img li img{
	width:100%;
	height:auto;
}
/*エディトリアル写真小*/
ul.top_editorial_sub_img{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap : wrap;
	flex-wrap: wrap;
}
ul.top_editorial_sub_img li{
	width:23.5%;
}
ul.top_editorial_sub_img li img{
	width:100%;
	height:auto;
}
}
@media screen and (min-width: 1000px){
ul.top_editorial_img{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap : wrap;
	flex-wrap: wrap;
}
ul.top_editorial_img li{
	width:49%;
}
ul.top_editorial_img li img{
	width:100%;
	height:auto;
}
/*エディトリアル写真小*/
ul.top_editorial_sub_img{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap : wrap;
	flex-wrap: wrap;
}
ul.top_editorial_sub_img li{
	width:23.5%;
}
ul.top_editorial_sub_img li img{
	width:100%;
	margin-top:2px;
	height:auto;
}
}
p.top_editorial_sub_cap{
	width:100%;
	font-size:12px;
	line-height:1.5;
	color:#999;
}

/*占いコンテンツ*/
.top_fortune_detail{
	width:100%;
	box-sizing:border-box;
	padding:15px 18px;
	border:1px #bcea4b solid;
	background:#fff;
}
.top_fortune_detail h4{
	font-size:0.875rem;
	line-height:1.65;
}
.top_fortune_detail h5{
	font-size:0.875rem;
	line-height:1.65;
	font-weight:normal;
}
.top_fortune_detail p{
	font-size:0.875rem;
	line-height:1.65;
}
/*パズル*/
@media screen and (max-width: 767px){
dl.top_puzzle_detail {
	line-height : 1.75;
}
dl.top_puzzle_detail dt {
	font-size:0.875rem;
	width : 9.1em;
	color:#8dc21f;
}
dl.top_puzzle_detail dd {
	font-size:0.875rem;
	margin-left : 0;
	margin-top : 0;
	padding-bottom:1rem;
}

dl.top_puzzle_mag {
	line-height : 1.75;
}
dl.top_puzzle_mag dt {
	font-size:0.875rem;
	width : 19.1em;
	color:#333;
}
dl.top_puzzle_mag dd {
	font-size:0.875rem;
	margin-left : 0;
	margin-top : 0;
	padding-bottom:0.125rem;
}

h4.top_puzzle{
	font-size:0.875rem;
	line-height:1.65;
}
}
@media screen and (min-width: 768px){
dl.top_puzzle_detail {
	line-height : 1.75;
}
dl.top_puzzle_detail dt {
	font-size:0.875rem;
	width : 9.1em;
	color:#8dc21f;
}
dl.top_puzzle_detail dd {
	font-size:0.875rem;
	margin-left : 9.1em;
	margin-top : -1.75em;
	padding-bottom:0.125rem;
}

dl.top_puzzle_mag {
	line-height : 1.75;
}
dl.top_puzzle_mag dt {
	font-size:0.875rem;
	width : 19.1em;
	color:#666;
}
dl.top_puzzle_mag dd {
	font-size:0.875rem;
	margin-left : 19.1em;
	margin-top : -1.75em;
}
h4.top_puzzle{
	font-size:0.875rem;
	line-height:1.65;
	padding-top:1em;
}
}
/*アプリ*/
@media screen and (max-width: 767px){
ul.top_app_detail{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
}
ul.top_app_detail li{
	width:100%;
	display: -webkit-flex;
	display: flex;	
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}
.app_img{
	width:30%;
	max-width:90px;
	margin-bottom:10px;
	margin-right:4.5%;
}
.app_img img{
	width:100%;
	height:auto;
}
.app_txt{
	width:65%;
}
}
@media screen and (min-width:768px) and ( max-width:999px) {
ul.top_app_detail{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
ul.top_app_detail li{
	width:48%;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.app_img{
	width:30%;
	margin-right:5%;
}
.app_img img{
	width:100%;
	height:auto;
}
.app_txt{
	width:65%;
}
}
@media screen and (min-width: 1000px){
ul.top_app_detail{
	width:100%;
	list-style-type:none;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
ul.top_app_detail li{
	width:48%;
	display: -webkit-flex;
	display: flex;	
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.app_img{
	width:30%;
	margin:0;
}
.app_img img{
	width:100%;
	height:auto;
}
.app_txt{
	width:65%;
}
}
.app_txt h3{
	font-size:0.8125rem;
	line-height:1.75;
}
.app_txt p{
	font-size:0.8125rem;
	line-height:1.75;
}


/*News*/
@media screen and (max-width: 767px){
.news_wrap{
	padding:0 18px;
	box-sizing:border-box;
	margin:0 auto;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
}
.news_ttl_box{
	width:100%;
	text-align:center;
	padding:0;
}
.news_ttl{
  display:block;
  width:50px;
  height:50px;
  margin:0 auto 10px;
  line-height:50px;
  background:#a6dc33;
  border-radius:100%;
  color:#fff;
  font-size:0.8125rem;
  text-align:center;
}
.news_detail_box{
	width:100%;
}
}

@media screen and (min-width:768px) and ( max-width:999px) {
.news_wrap{
	width:100%;
	padding:0 15px;
	box-sizing:border-box;
	margin:0 auto;
	display: -webkit-flex;
	display: flex;	
}
.news_ttl_box{
	width:5%;
	text-align:left;
	padding-right:1%;
	min-width:55px;
}
.news_ttl{
  display:block;
  width:50px;
  height:50px;
  margin:0;
  line-height:50px;
  background:#a6dc33;
  border-radius:100%;
  color:#fff;
  font-size:0.8125rem;
  text-align:center;
}
.news_detail_box{
	width:94%;
	max-width:940px;
}
}
@media screen and (min-width: 1000px){
.news_wrap{
	width:100%;
	margin:0 auto;
	max-width:1000px;
	display: -webkit-flex;
	display: flex;	
}
.news_ttl_box{
	width:5%;
	text-align:left;
	padding-right:1%;
	min-width:55px;
}
.news_detail_box{
	width:94%;
	max-width:940px;
}
.news_ttl{
  display:block;
  width:50px;
  height:50px;
  margin:0;
  line-height:50px;
  background:#a6dc33;
  border-radius:100%;
  color:#fff;
  font-size:0.8125rem;
  text-align:center;
}
}
dl.news_detail{
	line-height : 1.75;
	text-align:left;
}
dl.news_detail dt {
	font-size:0.875rem;
	width : 5.2em;
}
dl.news_detail dd {
	font-size:0.875rem;
	margin-left : 5.2em;
	margin-top : -1.75em;
	border-left:1px #a6dc33 solid;
	padding:0 0 3px 0.5em;
}
.news_detail_cap{
	font-size:0.8125rem;
	color:#8dc21f;
}
.news_detail_title{
	font-size:0.8125rem;
	color:#bbb;
	text-align:left;
	padding-bottom:8px;
}
.detail_puzzle{
	border-bottom:1px #ccc dotted;
	padding-bottom:16px;
	margin-bottom:16px;
}
.detail_design{
	margin-top:0px;
}

/*ギャラリー*/

@media screen and (max-width: 767px){
.gallery_inner{
	width: 90%;
	max-width:1000px;
	margin:0 auto;
	padding:0 10px;
	box-sizing:border-box;
}
ul.gallery_wrap{
	max-width: 100%;
	display: flex;
	list-style-type: none;
	justify-content: space-between;
	flex-direction: column;
}
}
@media screen and (min-width: 768px){
.gallery_inner{
	width: 100%;
	max-width:1000px;
	margin:0 auto;
	padding:0 10px;
	box-sizing:border-box;
}
ul.gallery_wrap{
	max-width: 100%;
	display: flex;
	list-style-type: none;
	justify-content: space-between;
}
}
@media screen and (max-width: 767px){
ul.gallery_wrap li{
	display:flex;
	width:50%; 
	max-width: 490px;
	height: auto;
	padding: 10px 0;
	cursor: pointer;
	transition: opacity 0.3s ;
	align-items: center;
	flex-direction: column;
	margin:0 auto;
}
}
@media screen and (min-width: 768px){
ul.gallery_wrap li{
	display:flex;
	width:490%; 
	max-width: 490px;
	height: auto;
	padding: 10px 0;
	cursor: pointer;
	transition: opacity 0.3s;
	align-items: center;
}
}

li.gal_img:hover{
	opacity: 0.7;
}
@media screen and (max-width: 999px){
.img-box {
	width: 100%;
	max-width:767px;
	display:flex;
	text-align:left;
	flex-direction: column;
    height: auto;
}
.img-box img {
	width:100%;
	max-height: auto;
}
.caps{
	width:100%;
	max-width:767px;
	padding:10px 0;
	display:flex;
	text-align:left;
	flex-direction: column;
	justify-content: flex-start;
}
}
@media screen and (min-width: 1000px){
.img-box {
	width: 52%;
	max-width:260px;
    height: auto;
}
.img-box img {
	width:auto;
	max-height: 350px;
}
.caps{
	width:48%;
	max-width:240px;
	padding:10px 0;
	display:flex;
	text-align:left;
	flex-direction: column;
	justify-content: flex-start;
}
}
h5.des{
	display:block;
	width:100%;
	max-width:240px;
	font-size:0.875rem;
	line-height:1.5;
	font-weight:bold;
	color:#999;
	padding-left:10px;
	box-sizing:border-box;
}
h6.subdes{
	display:block;
	width:100%;
	font-size:0.75rem;
	line-height:1.5;
	font-weight:bold;
	color:#ccc;
	padding-left:10px;
	box-sizing:border-box;
}
.caps p{
	font-size:0.75rem;
	line-height:1.5;
	padding-left:10px;
	color:#ccc;
}

/* モーダルのスタイル */
.modal {
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.4); /* 背景色 */
    opacity: 0; /* 初期状態では透明 */
    visibility: hidden; /* 初期状態では不可視 */
    transition: opacity 0.5s, visibility 0.5s; /* アニメーション効果 */
}

/* モーダルの画像スタイル */
.modal-content {
    display: block;
    width: 80%;
    max-width: 700px;
}

/* モーダルの閉じるボタン */
#close {
    position: absolute;
    top: 15px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
}