@charset 'UTF-8';

/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

	トップページ

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */



/* ================================================================================

	レイアウト

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		max-width: none;
		width: auto;
		min-height: 50vh;
		display: block;
	}

	.inner_wrap {
		position: relative;
	}

	.elementor-top-section > div {
		padding: 0 20px;
	}
	.page-home .elementor-section > .elementor-container {
		max-width: 1000px;
	}
}


/* 小さめ画面
----------------------------------------------- */
@media (min-width: 768px) and (max-width: 1366px) {
	main.outer_wrap {
		margin-left: 200px;
	}
}


/* 大きめ画面
----------------------------------------------- */
@media (min-width: 1367px) {
	main.outer_wrap {
		margin-left: 300px;
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	#wrapper {
	}

	main.outer_wrap {
		position: relative;
		width: 100%;
	}

	.inner_wrap {
		position: relative;
	}
}




/* ================================================================================

	メイン画像

================================================================================ */

/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.main_top > div {
		max-width: none !important;
	}
	.main_top img {
		width: 100%;
		height: auto;
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.main_top > div {
	}
	.main_top img {
		width: 100%;
		height: auto;
	}
}








/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

	ここからコンテンツ内容

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */




/* ================================================================================

	top-row01、top-row02、top-row03

================================================================================ */

.top-row01 {
	position: relative;
}
.top-row02 {
	position: relative;
}


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	.top-row01,
	.top-row02 {
	}

	.top-row03 {
		position: relative;
		padding: 76px 0 80px;
	}
	.top-row01 .top_inner01 {
		padding: 76px 40px 80px 0;
	}
	.top-row02 .top_inner01 {
		padding: 76px 0 80px 40px;
	}

	/* 見出し */
	.title_top {
		margin: 0 0 1.5em 0 !important;
	}
	.title_top h2 {
		position: relative;
		font-size: 18px;
		font-weight: 600;
		line-height: 1.6 !important;
		padding: 0 0 1.2em 0 !important;
		text-align: center;
	}
	.title_top h2 span {
		display: block;
		font-size: 1.6em;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		font-weight: 700;
		letter-spacing: 0.1em;
		text-indent: 0.1em;
	}
	.title_top h2 .big {
		display: contents;
		font-size: 1.6em;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		font-weight: 700;
		letter-spacing: 0.1em;
		text-indent: 0.1em;
		color: #0BA5C8;
	}
	.title_top h2:after {
		position: absolute;
		bottom: 0;
		left: 50%;
		margin: 0 0 0 -15px;
		content: "";
		display: block;
		width: 30px;
		height: 3px;
	}
	.bg_a {
		background-image: url(https://www.pikapika-osouji.com/wordpress/wp-content/themes/grbs-lite/img/bg_a.jpg);
		background-repeat: no-repeat;
		background-size: cover;
	}

	/* テキスト */
	.text_top01 {
		font-size: 18px;
	}
	.text_top01b {
		text-align: center;
	}

	/* リンクボタン */
	.link_top01 {
		margin-top: 2em;
		text-align: center;
	}

	.link_top01 ul {
		font-size: 0;
	}
	.link_top01 ul li {
		display: inline-block;
		vertical-align: top;
		margin-left: 8px;
	}
	.link_top01 ul li:first-of-type {
		margin-left: 0;
	}

	.link_top01 a {
		position: relative;
		display: inline-block;
		padding: 0.8em 4em;
		border: 1px solid;
		font-size: 20px;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		line-height: 1;
		text-align: center;
	}
	.link_top01 a:after {
		position: absolute;
		content: ">";
		font-family: FontAwesome;
		right: 0.8em;
		top: 0.8em;
	}

	.link_top01b a {
		border: none;
	}
	.plan_wrap img {
		box-shadow: -14px -16px #0BA5C8;
	}
	
	.top-row03 .btn,
	.top-row03 a.btn,
	.top-row03 button.btn {
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 1.5;
		position: relative;
		display: inline-block;
		padding: 1rem 4rem;
		cursor: pointer;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		text-align: center;
		vertical-align: middle;
		text-decoration: none;
		letter-spacing: 0.1em;
		color: #212529;
		border-radius: 0.5rem;
	}
	
	/*ボタン周りの余白用*/
	.top-row03 .btn-wrap {
		margin-bottom: 60px;
	}
	
	.top-row03 a.btn-coupon {
		line-height: 1.2;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 55%;
		height: 120px;
		margin: 0 auto;
		padding: 0;
		pointer-events: none;
	}
	
	.top-row03 a.btn-coupon .left {
		width: 80%;
		padding-top: 20px;
		-webkit-transition: all 0.6s;
		transition: all 0.6s;
		-webkit-transform-origin: top left;
		transform-origin: top left;
		border: 2px solid #003375;
		border-right: 0;
		background: #fff;
		-webkit-transform-style: preserve-3d;
		transform-style: preserve-3d;
	}
	
	.top-row03 a.btn-coupon .left span {
		font-size: 1rem;
	}
	
	.top-row03 a.btn-coupon .left span.txt1 {
		font-size: 1.5vw;
		color: #f25c8e;
	}
	
	.top-row03 a.btn-coupon .left em {
		font-size: 2.5vw;
		font-style: normal;
		display: block;
		color: #003375;
	}
	
	.top-row03 a.btn-coupon .right {
		position: relative;
		width: 15%;
		height: 100%;
		-webkit-transition: all 0.6s;
		transition: all 0.6s;
		-webkit-transform-origin: top left;
		transform-origin: top left;
		color: #fff;
		border-left: 2px dotted #fff;
		background: #003375;
		-webkit-transform-style: preserve-3d;
		transform-style: preserve-3d;
	}
	
	.top-row03 a.btn-coupon .right span {
		font-size: 15px;
		line-height: 1;
		position: absolute;
		top: 0.2rem;
		left: calc(50% - 0.4rem);
		display: inline-block;
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		-webkit-transform-origin: bottom left;
		transform-origin: bottom left;
	}
	
	.top-row03 a.btn-coupon:hover .left {
		-webkit-transform: rotateX(-20deg);
		transform: rotateX(-20deg);
	}
	
	.top-row03 a.btn-coupon:hover .right {
		-webkit-transform: rotateX(-20deg) rotateY(75deg);
		transform: rotateX(-20deg) rotateY(75deg);
	}
}




/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.top-row01,
	.top-row02 {
	}

	.top-row03 {
		position: relative;
		padding: 12vw 4vw 14vw;
	}

	.top_inner01 {
		padding: 12vw 4vw 14vw;
	}


	/* 見出し */
	.title_top {
		margin: 0 0 2em 0 !important;
	}
	.title_top h2 {
		position: relative;
		text-align: center;
		font-size: 4vw;
		font-weight: 600;
		line-height: 1.6 !important;
		padding: 0 0 1.2em 0 !important;
	}
	.title_top h2 span {
		display: block;
		font-size: 1.6em;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
	}
	.title_top h2:after {
		position: absolute;
		bottom: 0;
		left: 50%;
		margin: 0 0 0 -4.2vw;
		content: "";
		display: block;
		width: 8.4vw;
		height: 2px;
	}

	/* テキスト */
	.text_top01 {
		font-size: 3.5vw;
	}

	/* リンクボタン */
	.link_top01 {
		margin-top: 6vw;
		text-align: center;
	}
	.link_top01 ul {
		font-size: 0;
	}
	.link_top01 ul li {
		margin-top: 3vw;
	}
	.link_top01 ul li:first-of-type {
		margin-top: 0;
	}
	.link_top01 a {
		position: relative;
		display: inline-block;
		width: 60%;
		padding: 0.8em 0;
		border: 1px solid;
		font-size: 4vw;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		line-height: 1;
		text-align: center;
	}
	.link_top01 a:after {
		position: absolute;
		content: ">";
		font-family: FontAwesome;
		right: 0.8em;
		top: 0.8em;
	}
	.title_top h2 .big {
		display: contents;
		font-size: 1.6em;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		font-weight: 700;
		letter-spacing: 0.1em;
		text-indent: 0.1em;
		color: #0BA5C8;
	}
	.bg_a {
		background-image: url(https://www.pikapika-osouji.com/wordpress/wp-content/themes/grbs-lite/img/bg_a.jpg);
		background-repeat: no-repeat;
		background-size: cover;
	}
	.plan_wrap img {
		box-shadow: -14px -16px #0BA5C8;
	}
	.top-row03 .btn,
	.top-row03 a.btn,
	.top-row03 button.btn {
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 1.5;
		position: relative;
		display: inline-block;
		padding: 1rem 4rem;
		cursor: pointer;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		text-align: center;
		vertical-align: middle;
		text-decoration: none;
		letter-spacing: 0.1em;
		color: #212529;
		border-radius: 0.5rem;
	}
	
	/*ボタン周りの余白用*/
	.top-row03 .btn-wrap {
		margin-bottom: 40px;
	}
	
	.top-row03 a.btn-coupon {
		line-height: 1.2;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 90vw;
    height: 100px;
		margin: 0 auto;
		padding: 0;
		pointer-events: none;
	}
	
	.top-row03 a.btn-coupon .left {
		width: 90%;
		padding-top: 16px;
		-webkit-transition: all 0.6s;
		transition: all 0.6s;
		-webkit-transform-origin: top left;
		transform-origin: top left;
		border: 2px solid #003375;
		border-right: 0;
		background: #fff;
		-webkit-transform-style: preserve-3d;
		transform-style: preserve-3d;
	}
	
	.top-row03 a.btn-coupon .left span {
		font-size: 1rem;
	}
	
	.top-row03 a.btn-coupon .left span.txt1 {
		font-size: 5vw;
		color: #f25c8e;
	}
	
	.top-row03 a.btn-coupon .left em {
		font-size: 8vw;
		font-style: normal;
		display: block;
		color: #003375;
	}
	
	.top-row03 a.btn-coupon .right {
		position: relative;
		width: 15%;
		height: 100%;
		-webkit-transition: all 0.6s;
		transition: all 0.6s;
		-webkit-transform-origin: top left;
		transform-origin: top left;
		color: #fff;
		border-left: 2px dotted #fff;
		background: #003375;
		-webkit-transform-style: preserve-3d;
		transform-style: preserve-3d;
	}
	
	.top-row03 a.btn-coupon .right span {
		font-size: 14px;
		line-height: 1;
		position: absolute;
		top: -0.4rem;
		left: calc(50% - 0.4rem);
		display: inline-block;
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
		-webkit-transform-origin: bottom left;
		transform-origin: bottom left;
	}
	
	.top-row03 a.btn-coupon:hover .left {
		-webkit-transform: rotateX(-20deg);
		transform: rotateX(-20deg);
	}
	
	.top-row03 a.btn-coupon:hover .right {
		-webkit-transform: rotateX(-20deg) rotateY(75deg);
		transform: rotateX(-20deg) rotateY(75deg);
	}
}





/* ================================================================================

	GALLERY

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.gallery_box a {
	}
	.gallery_box a img {
		width: 100%;
		height: 222px;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.gallery_box .elementor-image-gallery .gallery-item {
		width: 50%;
	}
	.gallery_box a {
		dipsly: block;
	}
	.gallery_box a img {
		width: 100%;
		height: 46vw;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}
}





/* ================================================================================

	NEWS / BLOG

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {

	.top-row04 {
		position: relative;
		padding: 80px 0;
	}

	/* 見出し */
	.title_top02 {
		margin: 0 0 40px 0 !important;
	}
	.title_top02 h2 {
		position: relative;
		text-align: center;
		font-size: 18px;
		font-weight: 600;
		line-height: 1.4 !important;
	}
	.title_top02 h2 span {
		font-size: 1.6em;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
	}



	/* NEWS / BLOG サムネイル付き
	----------------------------------------------- */
	.post_wrap {
		position: relative;
	}
	.post_wrap ul {
		width: 960px;
		text-align: center;
		font-size: 0;
	}
	.post_wrap ul li {
		display: inline-block;
		vertical-align: top;
		width: 300px;
		text-align: left;
		font-size: 16px;
		margin-left: 28px;
	}
	.post_wrap ul li:first-of-type {
		margin-left: 0;
	}

	/* サムネイル */
	.post_thumb {
		margin: 0 0 16px 0;
	}
	.post_thumb img {
		width: 100%;
		height: 200px;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}

	/* カテゴリアイコン */
	.post_icon {
		font-size: 14px;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		padding: 0 0 0 0.2em;
	}

	/* タイトル */
	.post_title {
		line-height: 1.3;
		margin: 0 0 16px 0;
	}
	.post_title a {
		font-size: 18px;
		display:block;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		-webkit-text-overflow: ellipsis;
		-o-text-overflow: ellipsis;
	}

	/* 本文 */
	.post_text {
	}



	/* NEWS / BLOG テキストのみ
	----------------------------------------------- */
	.post_wrap2 {
		position: relative;
		width: 100%;
		max-height: 270px;
		height: 100%;
		margin: 0 auto;
	}
	.post_wrap2 ul {
	}
	.post_wrap2 ul li {
		display: table;
		width: 100%;
		padding: 0 16px 12px;
		margin-top: 8px;
		border-bottom: 1px dotted;
	}
	.post_wrap2 ul li:first-of-type {
		margin-top: 0;
	}

	/* カテゴリアイコン */
	.post_icon2 {
		display: table-cell;
		width: 20%;
		vertical-align: top;
		font-size: 20px;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		text-align: left;
		line-height: 1.3;
		padding: 0;
	}

	/* 日付 */
	.post_date2 {
		display: table-cell;
		width: 13%;
		vertical-align: top;
		font-size: 20px;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		text-align: left;
		line-height: 1.3;
		padding: 0;
	}

	/* タイトル */
	.post_title2 {
		display: table-cell;
		width: 83%;
		vertical-align: top;
		text-align: left;
		line-height: 1.3;
	}
	.post_title2 a {
		font-size: 20px;
	}

}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {

	.top-row04 {
		position: relative;
		padding: 12vw 0 14vw 0;
	}


	/* 見出し */
	.title_top02 {
		margin: 0 0 6vw 0 !important;
	}
	.title_top02 h2 {
		position: relative;
		text-align: center;
		font-size: 4vw;
		font-weight: 600;
		line-height: 1.6 !important;
		padding: 0 0 1.2em 0 !important;
	}
	.title_top02 h2 span {
		font-size: 1.6em;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
	}
	.title_top02 h2:after {
		position: absolute;
		bottom: 0;
		left: 50%;
		margin: 0 0 0 -4.2vw;
		content: "";
		display: block;
		width: 8.4vw;
		height: 2px;
	}



	/* NEWS / BLOG サムネイル付き
	----------------------------------------------- */
	.post_wrap {
		position: relative;
		padding: 0 4vw;
	}
	.post_wrap ul {
	}
	.post_wrap ul li {
		width: 100%;
		border-bottom: 1px dotted;
		padding: 0 0 8vw 0;
		margin-top: 8vw;
	}
	.post_wrap ul li:first-of-type {
		margin-top: 0;
	}

	/* サムネイル */
	.post_thumb {
		margin: 0 0 4vw 0;
	}
	.post_thumb img {
		width: 100%;
		height: 59vw;
		object-fit: cover;
		font-family: 'object-fit: cover;'; /* IE対策 */
	}

	/* カテゴリアイコン */
	.post_icon {
		font-size: 3.2vw;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		text-align: left;
		padding: 0 0 0 0.2em;
	}

	/* タイトル */
	.post_title {
		text-align: left;
		line-height: 1.3;
		margin: 0 0 3vw 0;
	}
	.post_title a {
		font-size: 4vw;
	}

	/* 本文 */
	.post_text {
		font-size: 3.5vw;
		text-align: left;
	}



	/* NEWS / BLOG テキストのみ
	----------------------------------------------- */
	.post_wrap2 {
		position: relative;
		max-height: 80vw;
		height: 100%;
		margin: 0 auto;
		padding: 0 4vw;
	}
	.post_wrap2 ul {
	}
	.post_wrap2 ul li {
		width: 100%;
		padding: 0 0 4vw;
		margin-top: 4vw;
		border-bottom: 1px dotted;
	}
	.post_wrap2 ul li:first-of-type {
		margin-top: 0;
	}

	/* カテゴリアイコン */
	.post_icon2 {
		display: inline-block;
		vertical-align: top;
		font-size: 3.2vw;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		padding: 0 0.3em 0 0.15em;
		text-align: left;
	}

	/* 日付 */
	.post_date2 {
		display: inline-block;
		vertical-align: top;
		font-size: 3.2vw;
		font-weight: 700;
		font-family: 'Open Sans Condensed' ,'Noto Sans JP',-apple-system, BlinkMacSystemFont, 'Helvetica Neue', YuGothic, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN, Arial, 'メイリオ', Meiryo, sans-serif;
		letter-spacing: 0.1em;
		text-align: left;
	}

	/* タイトル */
	.post_title2 {
		width: 100%;
		text-align: left;
		line-height: 1.3;
		margin: 0 0 0.6vw 0;
	}
	.post_title2 a {
		font-size: 4vw;
	}
}





/* ================================================================================

	お問い合わせフォーム

================================================================================ */


/* PC設定
----------------------------------------------- */
@media (min-width: 768px) {
	.top-row05 {
		position: relative;
		padding: 80px 0;
	}
	.top_contact_text {
		font-size: 16px;
		padding: 40px 80px;
		margin: 0 0 40px 0 !important;
		border: 1px solid #cccccc;
	}
	.top_contact_text h3 {
		font-size: 18px;
	}
}


/* SP設定
----------------------------------------------- */
@media (max-width: 767px) {
	.top-row05 {
		position: relative;
		padding: 12vw 4vw 14vw;
	}
	.top_contact_text {
		padding: 4vw;
		margin: 0 0 6vw 0 !important;
		border: 1px solid #cccccc;
	}
	.top_contact_text h3 {
		font-size: 4vw;
	}
}