/*
    Theme Name: SWELL
    Theme URI: https://swell-theme.com/
    Description: シンプルなのに高機能。ブロックエディターの使い心地にこだわった国内最高峰のWordPressテーマ
    Version: 2.13.0
    Requires at least: 5.6
    Requires PHP: 7.3.0
    Author: LOOS,Inc.
    Author URI: https://loos.co.jp/
    Text Domain: swell
    Domain Path: /languages
    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


/* ヘッダー */
.c_header {
	background-color: #fff;
	display: flex;
	align-items: center;
	position: fixed;
	top: 0;
	width: 100%;
	justify-content: space-between;
	padding: 10px;
}

.c_header img {
	width: 200px;
}

.front-modal-btn {
	background: content-box;
	border: none;
	width: 40px;
	display: flex;
	align-items: center;
}

.transition-all {
transition: all 0.5s ease-in-out;
}

.c_header form {
	display: flex;
	align-items: center;
}

.c_header form input {
	border-radius: 15px;
	border: #DE7D9B solid 1px;
	font-size: small;
}

#searchsubmit {
	border: none;
	background-color: unset;
	padding: 0%;
	display: flex;
	align-items: center;
	margin: 0 10px;
}

/* モーダル背景 */
.modal-box {
	display: none;
	position: fixed;
	top: -1px;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.7);
	z-index: 1000;
	overflow: hidden;
}

/* スライドするモーダル */
.modal-content {
	position: absolute;
	top: 0;
	right: -300px; /* 初期位置：画面外 */
	width: 300px;
	height: 100%;
	background-color: white;
	padding: 20px;
	box-shadow: -2px 0 5px rgba(0, 0, 0, 0.5);
	transition: right 0.3s ease-in-out;
}

/* 開いている状態 */
.modal-content.open {
	right: 0; /* 画面内にスライド */
}

/* 閉じるボタン */
#closeModalBtn {
	background: none;
	border: none;
	cursor: pointer;
	position: absolute;
	top: 10px;
	right: 10px;
	width: 40px;
}

@media screen and (max-width: 480px) {
	.c_header img {
		width: 100px;
	}
	.c_header form input {
		font-size: 10px;
		padding: .25em .5em .2em;
	}
}

	.modal-box li img {
		width: 30px;
		height: 30px;
	
	}

	.modal-box ul.list li {
		margin-bottom: 5px;
	}


	.modal-box ul.c_list li {
		width: 49%;
		margin-bottom: 10px;
	}

	ul.c_list li p, .modal-box ul.list li a {
		font-size: 14px;
	}

	.modal-box ul.c_list {
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: start;
		display: flex;
		margin-top: 40px;
	}

	img {
		width: 100%;
	}

	.catchcopy {
		position: absolute;
		top: 400px;
		right: 100px;
		width: 50%;
	}

	.poiret {
		font-family: "Poiret One", serif;
		font-weight: 400;
		font-style: normal;
	}

	.kiwi-maru-regular {
		font-family: "Kiwi Maru", serif;
		font-weight: 400;
		font-style: normal;
	}

	/* カテゴリ */

	.banner1 {
		width: 600px;
		height: auto;
	}

	.category-icon {
		height: 40px;
		width: 40px;
	}

	.arrow-icon {
		width: 10px;
		height: 15px;
		
	}

	section.category {
		padding-top: 0px;
	}
	.c_list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-around;
		align-items: baseline;
		width: 100%;
	}

	.c_list .accordion__item {
		margin: 10px 0px;
		width: 45%;
	}
	.accordion__title, .accordion__content li {
		padding: 10px 24px;
		border-radius: 5px;
	}
	.accordion__title a, .accordion__content a {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.accordion__title a div {
		display: flex;
		align-items: center;
	}

	.accordion__title a div p, .accordion__content li a p{
		margin-left: 15px;
	}

	.accordion__content li {
		background-color: #FFFCF5;margin-bottom: 3px;
	}
	.accordion__content li a, .accordion__content li a div {
		display: flex;
		align-items: center;
	}
	.disabled-link {
    	pointer-events: none;
	}

	.accordion__content {
		display: none;
		cursor: pointer;
	}

	.accordion__content.is-open {
		display: block;
	}

	/* 新着記事 */
	section.new .top{
		display: flex;
		align-items: start;
		justify-content: space-between;
		margin-bottom: 24px;
	}

	section.new .top > div {
		display: flex;
		flex-direction: column;
		align-items: start;
		justify-content: center;
		width: 45%;
	}

	section.new .top img{
		width: 45%;
		height: 310px;
		object-fit: cover;
	
	}

	section.new .top > div .date {
		font-size: 16px;
	}

	section.new .top > div .tag, section.popular .tag {
		background-color: #FFFCF5;
		display: inline-block;
		justify-content: center;
		align-items: center;
		padding: 10px 45px;
		border-radius: 50px;
		margin: 20px 0px;
	}

	section.new ul {
		display: flex;
		justify-content: space-between;
		margin-bottom: 40px;
	}

	section.new ul li{
		width: 30%;
	}

	section.new ul li img{
		width: 100%;
		height: 165px;
		object-fit: cover;
	}

	section.new ul li .tag {
		background-color: #FFFCF5;
		display: inline-block;
		justify-content: center;
		align-items: center;
		padding: 10px 25px;
		border-radius: 50px;
		margin: 10px 0px;
	}

	/* 人気記事 */
	section.popular {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	section.popular .top {
		width: 38%;
	}
	section.popular .box {
		display: flex;
		justify-content: space-around;
	}

	section.popular .rankbox {
		position: relative;
	}

	section.popular .rankbox .rank-tag {
		position: absolute;
		top: -45px;
		left: -30px;
		width: 60px;
		height: 60px;
	}

	section.popular ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 58%;
	}

	section.popular ul li {
		width: 48%;
		margin-bottom: 30px;
	}

	section.popular ul li img.cover{
		width: 100%;
		height: 130px;
		object-fit: cover;
	}

	/* フッター */
	section.footer {
		padding: 80px 0px 20px 0px;
	}
	section.footer .frame {
		display: flex;
		align-items: center;
		margin: 20px 0;
		justify-content: space-between;
	}
	.footer .frame a {
		display: flex;
		align-items: center;
		margin-bottom: 10px;
		margin-right: 15px;
	}

	.footer .frame .c_list, .footer .frame .list {
		width: 70%;
	}

	.footer .frame .c_list {
		justify-content: start;
	}

	.footer .frame ul.c_list li {
		padding: 0;
	}
	ul.c_list li p {
		margin-left: 10px;
	}

	.footer .frame .list {
		display: flex;
	}
	.footer .frame .list li {
		margin-right: 5px;
	}

	.copyright {
		margin-top: 40px;
		color: white;
		font-size: 10px;
		text-align: center;
	}


	/* セクション共通 */
	section {
		padding: 80px 0px;
		display: flex;
		flex-direction: column;
		align-items: center;
		color: #9D4F4F;
	}

	section > div.frame {
		width: 70%;
		margin: 0 auto;
	}


	section h2 {
		font-size: 48px;
		text-align: center;
	}

	section h2 p{
		margin-bottom: 24px;
	}

	/* 共通 */
	.pointer {
		cursor: pointer;
	}

	.f16 {
		font-size: 16px;
	}

	.f24 {
		font-size: 24px;
	}
	.round-15 {
		border-radius: 15px;
	}

	p {
		text-overflow: ellipsis;
	}

	a {
		color: inherit;
	}

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

		.category-icon {
			height: 25px;
			width: 25px;
		}

		.arrow-icon {
			width: 8px;
			height: 10px;
		}

		.banner1 {
			width: 300px;
			height: auto;
		}
		.catchcopy {
			top: 200px;
			right: 40px;
			width: 55%;
		}
		section > div.frame {
			width: 95%;
		}
		.f16 {
			font-size: 12px;
		}

		.f24 {
			font-size: 26px;
		}

		ul.c_list { 
			flex-direction: column;
		}
		ul.c_list li {
			width: 100%;
			margin-bottom: 10px;
		}

		.accordion__title, .accordion__content li {
			padding: 10px 15px;
		}
		.accordion__title a div img, .footer .frame a img {
			width: 25px !important;
			height: 25px !important;
		}

		section.new .top {
			flex-direction: column;
		}
		section.new .top img {
			width: 100%;
		}
		section.new .top > div {
			width: 100%;
		}

		section.new ul li img {
			height: 100px;
		}

		section.new ul li .tag {
			padding: 5px 10px;
			font-size: 12px;
		}
		section.popular .rankbox .rank-tag {
			position: absolute;
			top: -20px;
			left: -10px;
			width: 50px;
			height: 50px;
		}
		section.popular .box {
			display: flex;
			justify-content: space-around;
			flex-direction: column;
		}
		section.popular .top {
			width: 100%;
			margin-bottom: 30px;
		}
		section.popular ul {
			width: 100%;
		}
		.footer .frame .list {
			flex-direction: column;
		}
		section.footer .frame {
			justify-content: space-around;
			flex-direction: column;
		}

		section.footer .frame .f24 {
			margin-bottom: 20px;
		}

		section.footer .frame .c_list {
			width: 100%;
			display: flex;
			flex-wrap: wrap;
			flex-direction: row;
			justify-content: end;
		}
	
		.footer .frame ul.c_list li {
			width: 45%;
		}
		.copyright {
			margin-top: 0px;
		}
	}

	@media screen and (max-width: 960px) {
		section > div.frame {
			width: 90%;
		}
	}


	/* グラデ */
	.b-gra {
		background: rgb(222,242,255);
		background: linear-gradient(40deg, rgba(222,242,255,1) 0%, rgba(235,255,250,1) 51%, rgba(255,255,245,1) 100%);
	}
	.pbp-gra {
		background: rgb(248,216,227);
		background: linear-gradient(40deg, rgba(248,216,227,1) 0%, rgba(239,243,243,1) 33%, rgba(235,255,250,1) 65%, rgba(243,190,208,1) 100%);
	}
	.p-gra {
		background: rgb(255,222,231);
		background: linear-gradient(40deg, rgba(255,222,231,1) 0%, rgba(255,237,234,1) 35%, rgba(255,240,235,1) 75%, rgba(222,242,255,1) 100%);
	}
	.footer{
		width: 100%;
		background: rgb(250,209,182);
		background: linear-gradient(40deg, rgba(250,209,182,1) 0%, rgba(245,188,188,1) 53%, rgba(255,232,199,1) 100%);
	}

