@charset "UTF-8";
/*!
Theme Name: 100meichew Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   100meichew
Version:    1.1.3
*/


*, body{
	font-family: "Zen Maru Gothic", serif;
	font-weight: normal;
	font-size:18px;
}
a{
	color:#004095;
	text-decoration: none;
	transition: 0.5s all;
}
a:hover{
	color:#990180;
}
img{
	width:100%;
}
.main{
	padding:0 0;
}
.content{
	margin-top: 0;
	background-color:#ffffff;
}
.custom-header{
	background-image: url("images/header/bg-header.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}
.custom-nav{
	margin: 0 auto;
	max-width:1000px;
}
.header-grid{
	padding:20px 0;
	display:grid;
	gap:30px;
	grid-template-columns:1fr 3.2fr;
}
.header-item:nth-child(1){
	text-align: left;
}
.header-item:nth-child(2){
	text-align: right;
}
.header-logo img{
	max-width:286px;
}
/*ナビメニュー*/
.nav-grid{
	display:grid;
	gap:20px;
	grid-template-columns:1.8fr 1fr 1fr;
	justify-content: center;
	align-items: center;
	background-color:#ffffff;
	border:5px #004095 solid;
	border-radius:25px;
	padding:10px 0;
	box-shadow:5px 5px #004095;
}
.nav-item{
	text-align: center;
	display: inline-grid;
	padding:0 20px;
	position:relative;
}
.nav-item:nth-child(1){
	padding:0 0 0 70px;
}
.nav-item:nth-child(2){
	padding:0 0 0 20px;
}
.nav-item:nth-child(3){
	padding:0 0 0 15px;
}
.nav-item:nth-child(1) a:before{
	top:24px;
	left:37px;
}
.nav-item:nth-child(2) a:before,.nav-item:nth-child(3) a:before{
	top:10px;
	left:-15px;
}
.nav-item a{
	font-size:1rem;
	font-weight:700;
	line-height:1.5;
	text-align: left;
}
.nav-item a:before{
	content:'';
	position: absolute;
	width:12px;
	height:8px;
	background-image: url("images/common/link-dot.svg");
	background-size:contain;
	background-position:center center;
	transition: 0.5s all;
}
.nav-item a:hover:before{
	transform: scale(1.5) ;
}
@media screen and (max-width:1000px){
.content,.custom-header{
	padding-left: 25px;
	padding-right: 25px;
}
}
@media screen and (max-width:800px){
.header-grid{
	gap:0px;
	grid-template-columns:1fr;
}
.header-item:nth-child(1){
	display:none;
}
.header-item:nth-child(1) img{
	max-width: 500px;
}
}
@media screen and (max-width:600px){
.custom-header {
    padding-left: 15px;
    padding-right: 15px;
}
.content{
	padding-left: 10px;
	padding-right: 10px;
}
}
@media screen and (max-width:500px){
main.main, div.sidebar {
    padding: 32px 0;
 }
}
@media screen and (max-width:450px){
.custom-header{
	padding-left: 20px;
	padding-right: 20px;
}
}
/*ホームキービジュアル*/
.kv-home {
    text-align: center;
    padding-bottom: 80px;
    padding-top: 50px;
}
.kv-title img{
	max-width:776px;
}
.kv-package img{
	max-width:800px;
}
.kv-text img{
	max-width:40px;
}

/*コンテンツエリア*/
.content-area{
	max-width:1000px;
	margin:0 auto;
	padding:10px;
	padding-bottom:80px;
}
/*見出し*/
.title-block{
	text-align: center;
	margin: 0 auto 40px;	
}
.en-title{
	font-weight:600;
	letter-spacing:0.18em;
	margin-bottom: 20px;
	color:#004095;
}
.decoration-line{
	width:20px;
	background-color:#004095;
	border:2px #004095 solid;
	border-radius:3px;
	margin:0 auto;
}
.ja-title{
	font-size:2rem;
	font-weight:600;
	margin:10px auto 0;
	color:#004095;
	line-height:1.2;
}
.title-block h3{
	font-size:1.2rem;
	font-weight:500;
}

/*お問合せ先*/
.sec-contact{
	width:100%;
/*	background-color:#f29600;*/
	background-image: url("images/footer/bg-footer.jpg");
	background-size: cover;
	background-position: center center;
	padding:70px 25px 50px;
}
.contact-contents{
	max-width:550px;
	margin:0 auto;
	background-image: url("images/footer/white-bg.png");
	background-repeat: no-repeat;
	padding:30px 30px 50px;
    background-size: 100% 100%; /* 背景画像のサイズを自動に設定 */
    background-position: center; /* 背景画像の位置を中央に設定 */
   /*height: 100vh;  画面の高さいっぱいに要素を設定 */
    width: 100%; /* 親要素に対して横幅100% */
}
.contact-contents .title-block {
    margin: 20px auto;
}

.contact-info-01{
	text-align: center;
}
.contact-info-01 p,.contact-info-02 p{
	font-size:0.9rem;
	line-height: 1.5;
}
.contact-info-02{
	margin-top:40px;
}
.contact-info-02 h4{
	text-align:center;
	font-size:1.4rem;
	font-weight:500;
	color:#004095;
	margin-bottom:15px;
}
.contact-grid{
	padding:0 20px 0 50px;
	margin:0 auto 3px;
	display:grid;
	gap:20px;
	grid-template-columns:1fr 3.2fr;	
}
.contact-item p{
	line-height:1.5;	
}
.twocolumn-grid{
	display:-ms-grid;
	display:grid;
	gap:50px;
	grid-template-columns:1fr 1.2fr;
}
.twocolumn-item h1{
	font-size:1.5rem;
}
.twocolumn-item img{
	max-width:428px;
	width:100%;
}
@media screen and (max-width:750px){
.twocolumn-grid{
	gap:10px;
	-ms-grid-columns:1fr;
	grid-template-columns:1fr;
	-ms-grid-rows:auto 30px auto;
}
}
@media screen and (max-width:600px){
.sec-contact{
	padding:70px 15px 50px;
}
.contact-contents{
	background-image: url("images/footer/white-bg-600.png");
}
}
@media screen and (max-width:450px){
.sec-contact{
	padding:70px 20px 50px;
}
.contact-contents{
	background-image: url("images/footer/white-bg-450.png");
    padding: 30px 10px 50px;
}
.contact-grid{
	gap:0;
	grid-template-columns:1fr;
	margin-bottom: 10px;
	padding: 0 0 0;
}
.contact-item{
	text-align: center;
}
.contact-item:nth-child(1) p{
	font-weight:600;
}
}
@media screen and (max-width:400px){
.contact-contents{
	background-image: url("images/footer/white-bg-350.png");
}
.sec-contact a.btn-link{
	padding: 10px 32px;
}
}
/*関連組織*/
.related-org{
	background-color:#ffffff;
	width:100%;
}
.related-org ul{
	max-width:1000px;
	margin:0 auto;
	padding:10px 0;
	text-align: center;
}
.related-org ul li{
	list-style: none;
	display:inline-block;
}
.related-org ul li:nth-child(1) img{
	max-width:136px;
	margin-right:45px;
}
.related-org ul li:nth-child(2) img{
	max-width:150px;
	margin-right:45px;
}
.related-org ul li:nth-child(3) img{
	max-width:134px;
}

/*フッター*/
.footer {
	margin-top:0;
    padding:0;
}
.footer-bottom{
	max-width:1000px;
	margin:20px auto 0;
	text-align:center;
}
.footer-bottom ul{
	margin:0;
	padding:0;
}
.footer-bottom ul li{
	list-style: none;
	display: inline-block;
}
.footer-bottom ul li a{
	font-size:0.9rem;
	color:#000000;
}
.footer-bottom ul li a:hover{
	color:#004095;
}
.copyright{
	font-size:0.7rem;
	margin-top:0;
}

/*固定ページ*/
.entry-title,.post-date,.post-update{
  display: none;
}


/*ページトップ*/
/*pagetop*/
#page_top{
	width: 56px;
	height:56px;
	position: fixed;
	right: 15px;
	bottom: 45px;
	z-index: 1;
}
#page_top a{
	position: relative;
	display: block;
	text-decoration: none;
}

#page_top a::before{
  content: '';
  display: inline-block;
  width: 56px;
  height: 56px;
  background-image:url("images/common/pagetop.svg");
  background-size: contain;
}

@media screen and (max-width:400px){
#page_top{
	bottom: 15px;
}
}
/*プライバシーポリシー*/
.privacypolicy-contents h5 {
  margin-top: 40px;
  margin-bottom: 10px;
  border-bottom: solid 3px #eeeeee;
  position: relative;
}
.privacypolicy-contents h5 span{
  font-size:1.2rem;
}

.privacypolicy-contents h5:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #004095;
  bottom: -3px;
  width: 15%;
}
.privacypolicy-contents p{
	font-size:1rem;
}
@media screen and (max-width:450px){
.privacypolicy-contents h5 span{
  font-size:1rem;
}
.privacypolicy-contents p{
	font-size:0.8rem;
}
}

/*サイトマップ*/
.sitemap-contents a:hover{
	color:#990180;
}
.sitemap-contents ul{
	padding-left: 30px;
}
.sitemap-item{
	margin-top:30px;
}

/*PC&モバイルコンテンツ切り替え*/
.display-pc-01{
	display:block;
}
.display-sp-01{
	display:none;
}
@media screen and (max-width:750px){
.display-pc-01{
	display:none;
}
.display-sp-01{
	display:block;
}
}

/*Google recaptcha*/
.grecaptcha-badge { visibility: hidden; }

.slide-item img{
object-fit: cover;
width: 100%;
}

@media screen and (max-width:500px){
.slide-item img{
object-position:46% 50%;
}
}

/*切り替え*/
.display-sp-04{
	display:none;
}
@media screen and (max-width:960px){
.display-pc-04{
	display:none;
}
.display-sp-04{
	display:block;
}
}
.display-sp-05{
	display:none;
}
@media screen and (min-width:601px) and (max-width:960px){
.display-pc-05{
	display:none;
}
.display-sp-05{
	display:block;
}
}
.display-sp-02{
	display:none;
}
@media screen and (max-width:800px){
.display-pc-02{
	display:none;
}
.display-sp-02{
	display:block;
}
}
.display-sp-03{
	display:none;
}
@media screen and (max-width:600px){
.display-pc-03{
	display:none;
}
.display-sp-03{
	display:block;
}
}

.display-pc-06{
	display: block;
}
.display-sp-06{
	display: none;
}
@media screen and (max-width:500px){
.display-pc-06{
	display: none;
}
.display-sp-06{
	display: block;
}
}
.display-pc-07{
	display: block;
}
.display-sp-07{
	display: none;
}
@media screen and (max-width:450px){
.display-pc-07{
	display: none;
}
.display-sp-07{
	display: block;
}
}



/*申込みフォーム*/
.select-check{
text-align: center;
margin-top: 10px;
font-size: 1.2rem;
font-weight: bold;
color: #ff0000;
}
.contact-click p{
text-align: center;
font-size: 1.2rem;
font-weight: bold;
color: #ff0000;
}

/*タイトル調整*/
.display-sp-2{
	display:none;
}
@media screen and (max-width:450px){
.display-pc-2{
	display:none;
}
.display-sp-2{
	display:block;
}
}



/*PICUP*/

.sec-pickup{
	width: 100%;
	background-color:#ffffff;
	padding: 70px 0;
}
.pickup-contents{
	max-width:980px;
	margin:0 auto 58px;
	border-radius:180px;
	border:20px #990180 solid;
	background-color: #ffffe9;
	box-shadow:15px 15px #990180;
	position:relative;
}
.pickup-separate{
	height:50px;
}
.pickup-title{
	text-align:center;
	padding:40px 0;
}
.pickup-title h2 span{
	font-size:2.2rem;
	font-weight:600;
	color:#990180;
	display:inline-block;
}
h2 span::after {
    content: "";
    display: block;
    width: 100%;
    height: 7px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center bottom;
}
h2.castle-001 span::after {
    background-image: url('images/underline/castle-001.svg'); /* 使用する画像 */
}
h2.castle-002 span::after {
    background-image: url('images/underline/castle-002.svg'); /* 使用する画像 */
}
.pickup-num{
	text-align: center;
	position:absolute;
	top:-30px;
	left:120px;
	background-image: url("images/pickup/yellow-bubble.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width:212px;
	height:124px;
	color:#990180;
	font-size:1.8rem;
	font-weight: 700;
	padding-top:28px;
}
.pickup-box{
	width:100%;
	background-color:#ffffff;
	padding: 30px;
}
.pickup-slider{
	padding-left:40px;
	padding-right:40px;
}
.pickup-slider img{
	width: 100%;
	height:280px;
	object-fit: cover;
	object-position: center center;
}
/*矢印カスタマイズ*/
.pickup-slider .slick-arrow:before{
    content:""!important;
    width: 100%!important;
    height: 100%!important;
    position: absolute;
}
.pickup-slider .slick-prev:before{
    background: url("images/pickup/prev-arrow.svg")!important;
    background-size: contain!important;
	background-repeat: no-repeat!important;
    z-index:2!important;
    width:25px!important;
    height:28px!important;
    position: absolute;
    top: 0!important;
    left: 20px!important;
    cursor: pointer;
}
.pickup-slider .slick-next:before {
    background-image:url("images/pickup/next-arrow.svg")!important;
    background-size: contain!important;
	background-repeat: no-repeat!important;
    z-index:2!important;
    width:25px!important;
    height:28px!important;
    position: absolute;
    top: 0!important;
    right: 20px!important;
    cursor: pointer;
}
.pickup-slider{
	position: relative;
}
.chosaku{
	position: absolute;
	right: 8px;
	bottom: 1px;
	font-size:0.8rem;
	color:#ffffff;
	text-shadow: 1px 1px 4px #000000;
}
/*矢印カスタマイズここまで*/
.slick-dots {
    display: block !important;
}

.pickup-slider{
	display: none;
}
.pickup-slider.slick-initialized{
	display: block;
}

.pickup-info-block{
	margin:55px auto;
}

.pickup-grid{
	display: grid;
	grid-template-columns: 1fr 3.5fr 0.2fr 0.7fr;
	grid-column-gap: 0;
	padding-left:30px;
	padding-right:30px;
}
.pickup-item:nth-child(1) {
	grid-area: 1 / 1 / 4 / 2;
	text-align: center;
	margin:0 auto;
}
.pickup-item:nth-child(2) {
	grid-area: 1 / 2 / 4 / 3;
	padding:0 8%;
}
.pickup-item:nth-child(3) { grid-area: 1 / 3 / 4 / 4; }
.pickup-item:nth-child(4) { grid-area: 1 / 4 / 4 / 5; }

.castle-num{
	width:85px;
	height:90px;
	background-image: url("images/pickup/castle-num.svg");
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
	padding-top: 28px;
}
.castle-num span{
	color:#ffffff;
	font-size:1.4rem;
	font-weight:600;
	font-family: "Zen Maru Gothic", serif;	
}
.pickup-title-sub h4{
	font-size:1.4rem;
	font-weight:600;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
.pickup-item:nth-child(3) img{
	width:14px;
	height:170px;
}

.pickup-info-grid{
	display:grid;
	gap:30px;
	grid-template-columns:1fr 3fr;
	margin-bottom: 15px;
	padding:0 10px 10px;
	border-bottom:1px #990180 solid;
}
.pickup-info-item,.pickup-info-item span,.pickup-info-item a{
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size:0.9rem;
}
.url-info{
	word-break:break-all;
}
@media screen and (max-width:980px){
.pickup-num{
	left:90px;
}
}
@media screen and (max-width:900px){
.pickup-num{
	left:60px;
}
}
@media screen and (max-width:850px){
.pickup-num{
	left:30px;
}
}
@media screen and (max-width:800px){
.pickup-num{
	left:0;
}
}
@media screen and (max-width:750px){
.pickup-contents{
	border-radius:90px;
}
.pickup-num{
	width:180px;
	height:105px;
	padding-top:20px;
}
.pickup-grid{
	grid-template-columns: auto auto 1fr;
	grid-column-gap: 30px;
	grid-row-gap: 0;
}
.pickup-item:nth-child(1) { grid-area: 1 / 1 / 3 / 2; }
.pickup-item:nth-child(2) { grid-area: 3 / 1 / 4 / 5; }
.pickup-item:nth-child(3) { grid-area: 2 / 2 / 3 / 5; }
.pickup-item:nth-child(4) { grid-area: 1 / 2 / 2 / 5; }
.pickup-item:nth-child(2) {
	padding:0 0;
}
.pickup-item:nth-child(3),.pickup-item:nth-child(4) {
	padding-left:50px;
}
.pickup-title-sub h4{
	-ms-writing-mode:horizontal-tb;
	writing-mode:horizontal-tb;
}
.pickup-item:nth-child(3) img{
	width:170px;
	height:14px;
}
.pickup-info-grid{
	margin-top:30px;
	padding:0 10px 10px;
}
.pickup-info-box{
	margin-top: 30px;
}
.pickup-info-grid{
	margin-top: 10px;
}
}
@media screen and (max-width:680px){
.pickup-num{
	left:-30px;
}
}
@media screen and (max-width:600px){
.pickup-info-grid{
	gap:5px;
	grid-template-columns:1fr;
}
.pickup-info-item:nth-child(1){
	font-weight:600;
}
.pickup-num{
	width:150px;
	height:88px;
	left:10px;
	padding-top:15px;
	font-size: 1.5rem;
}
}
@media screen and (max-width:550px){
.pickup-box {
    padding: 15px;
}
.pickup-slider {
    padding-left: 20px;
    padding-right: 20px;
}
.pickup-slider .slick-prev:before {
    width: 18px!important;
    height: 20px!important;
}
.pickup-slider .slick-next:before {
    width: 18px!important;
    height: 20px!important;
}
.pickup-num{
	top:-40px;
	left:0;
}
}
@media screen and (max-width:500px){
.pickup-grid {
    grid-column-gap: 0;
    padding-left: 15px;
    padding-right: 15px;
}
.pickup-separate {
    height: 20px;
}
}
@media screen and (max-width:450px){
.pickup-box {
    padding: 15px;
}
.pickup-slider {
    padding-left: 0;
    padding-right: 0;
}
.slick-slide img {
    transform: scale(1.15);
}
}
@media screen and (max-width:400px){
.pickup-slider img{
	max-height: 180px;
}
.pickup-grid {
    grid-template-columns: 40px auto 1fr;
}
.pickup-title-sub h4{
	font-size:1.2rem;
}
.castle-num {
    width: 55px;
    height: 70px;
	padding-top: 22px;
}
.castle-num span{
	font-size:1.1rem;
}
.pickup-info-item:nth-child(2) {
    font-size: 0.8rem;
}
.pickup-num{
	width:120px;
	height:70px;
	top:-30px;
	left:0;
	padding-top:10px;
	font-size: 1.3rem;
}
}

.btn-link-pickup{
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	margin: auto;
	padding:4px 20px;
	border: 2px solid #a24a93;
	background: #a24a93;
	color: #ffffff;
	border-radius: 100vh;
	transition: 0.5s;
	font-weight:500;
}
.btn-link-pickup:hover {
	color: #a24a93;
	background: #fff;
}

@media screen and (max-width:600px){
.pickup-contents {
    border: 15px #990180 solid;
    box-shadow: 10px 10px #990180;
}
.pickup-title h2 span{
	font-size:1.8rem;
}
.pickup-slider img{
	height:220px;
}
}
@media screen and (max-width:500px){
.sec-pickup{
	margin-top:-10px;
}
.sec-pickup .content-block{
	padding:20px 15px 60px;
}
.castle-label{
	top:-85px;
}
.castle-label img{
	max-width:200px;
}
.pickup-slider img{
	max-height:300px;
}
}
@media screen and (max-width:450px){
.pickup-contents {
	border-radius:60px;
    border: 10px #990180 solid;
    box-shadow: 5px 5px #990180;
}
.pickup-title h2 span{
	font-size:1.6rem;
}
}
@media screen and (max-width:400px){
.pickup-title {
    padding: 30px 0;
}
.pickup-title h2 span{
	font-size:1.4rem;
}
.pickup-info-block {
    margin: 35px auto;
}
}

/*ABOUT*/
.sec-about{
	max-width:980px;
	margin:50px auto 0;
	width: 100%;
	background-image:url("images/header/white-bg.png");
	background-repeat: no-repeat;
	padding:45px 30px;
    background-size: 100% 100%; /* 背景画像のサイズを自動に設定 */
    background-position: center; /* 背景画像の位置を中央に設定 */
    /*height: 100vh;  画面の高さいっぱいに要素を設定 */
    width: 100%; /* 親要素に対して横幅100% */
}
.sec-about .title-block {
    margin: 0 auto 20px;
}

.sec-about .content-block{
    max-width: 840px;
	width: 100%;
    margin: 0 auto 40px;
}
.sec-about .content-block p{
    max-width:800px;
	text-align: center;
	margin: 0 auto;
}
.sec-news .content-block, .sec-contact .content-block{
    max-width: 960px;
	width: 100%;
    margin: 0 auto;
}
.sec-about .content-block h2{
	font-size:1.4rem;
	font-weight: 600;
	margin-bottom: 20px;
}
.sec-about .content-block h2 span{
	font-size:1.4rem;
	font-weight: 600;
	padding-bottom:5px;
	line-height:0.95em;
	color: #990180;
	display: inline-block;
	letter-spacing: 0.15em;
}
.sec-about .content-block-01,.sec-about .content-block-02,.sec-about .content-block-03{
	position:relative;
}
.sec-about .content-block-01:before{
	content:'';
	position:absolute;
	top:40px;
	right:0;
	background-image:url("images/about/grape.png");
	width:192px;
	height:142px;
	background-repeat: no-repeat;
	background-size: contain;
}
.sec-about .content-block-02:before{
	content:'';
	position:absolute;
	top:-80px;
	left:0;
	background-image:url("images/about/castle.png");
	width:164px;
	height:156px;
	background-repeat: no-repeat;
	background-size: contain;
}
.sec-about .content-block-03:before{
	content:'';
	position:absolute;
	top:-40px;
	right:40px;
	background-image:url("images/about/gift.png");
	width:112px;
	height:114px;
	background-repeat: no-repeat;
	background-size: contain;
}
.sec-about .content-block-03:after{
	content:'';
	position:absolute;
	top:-30px;
	left:160px;
	background-image:url("images/common/prepared.svg");
	width:98px;
	height:58px;
	background-repeat: no-repeat;
	background-size: contain;
}
.sec-about .content-block h2 span::after {
    content: "";
    display: block;
    width: 100%;
    height: 7px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center bottom;
	padding-top:8px;
}
.sec-about .content-block-01 h2 span::after {
    background-image: url('images/underline/about-001.svg'); /* 使用する画像 */
}
.sec-about .content-block-02 span::after {
    background-image: url('images/underline/about-002.svg'); /* 使用する画像 */
}
.sec-about .content-block-03 span::after {
    background-image: url('images/underline/about-003.svg'); /* 使用する画像 */
}

@media screen and (max-width:900px){
.sec-about .content-block-03:after{
	left:120px;
}
}
@media screen and (max-width:850px){
.sec-about .content-block-01:before{
	width:170px;
}
.sec-about .content-block-02:before{
	width:144px;
}
.sec-about .content-block-03:after{
	left:80px;
}
}
@media screen and (max-width:800px){
.sec-about{
	background-image:url("images/header/white-bg-800.png");
}
.ja-title{
	font-size:1.6rem;
}
.sec-about .content-block h2{
    font-size: 1.2rem;
    letter-spacing: 0.05em;
}
.sec-about .content-block h2 span {
    font-size: 1.2rem;
}
}
@media screen and (max-width:750px){
.sec-about .content-block-03:after{
	left:90px;
}
}
@media screen and (max-width:700px){
.sec-about .content-block-01:before {
    top: 70px;
    width: 140px;
}
.sec-about .content-block-02:before {
    width: 130px;
}
.sec-about .content-block-03:before {
    top: -40px;
    width: 90px;
}
.sec-about .content-block-03:after{
	left:60px;
}
}
@media screen and (max-width:650px){
.sec-about .content-block-03:after {
    left: 20px;
}
}
@media screen and (max-width:600px){
.sec-about{
	background-image:url("images/header/white-bg-600.png");
}
.ja-title {
    font-size: 1.4rem;
}
.sec-about .content-block h2 {
    font-size: 1rem;
}
.sec-about .content-block h2 span{
    font-size: 1rem;
    letter-spacing: 0.03em;
}
.content-block.content-block p {
    font-size: 0.9rem;
}
.sec-about .content-block-01:before {
    width: 120px;
}
.sec-about .content-block-02:before {
    top: -80px;
    width: 110px;
}
}
@media screen and (max-width:550px){
.sec-about .content-block-01:before {
    width: 110px;
    right: 0;
}
.sec-about .content-block-02:before {
    width: 95px;
    top: -50px;
    left: 0;
}
.sec-about .content-block-03:before {
    right: 0;
}
}
@media screen and (max-width:500px){
.sec-about {
    padding: 45px 15px;
}
.sec-about .content-block-01:before {
    top: 130px;
}
.sec-about .content-block-02:before {
    top: -40px;
}
.sec-about .content-block-03:after {
    left: 0;
}
}
@media screen and (max-width:450px){
.sec-about{
	background-image:url("images/header/white-bg-450.png");
    padding: 45px 10px;
}
.sec-about .content-block-01{
    margin: 0 auto 70px;		
}
.sec-about .content-block-02{
    margin: 0 auto 95px;		
}
.sec-about .content-block h2 span{
    font-size:1.2rem;
}
.sec-about .content-block-01:before {
    top: 185px;
	width:100px;
}
.sec-about .content-block-02:before {
	top:inherit;
    bottom:-160px;
	width: 80px;
}
.sec-about .content-block-03:before {
    right: 0;
    top: inherit;
    bottom: -80px;
}
.sec-about .content-block-03:after {
	background-image:url("images/common/prepared-right.svg");
	top:-60px;
    right:0;
	left:inherit;
}
}
@media screen and (max-width:400px){
.sec-about{
	background-image: url("images/header/white-bg-350.png");
}
.sec-about .content-block-03:before {
	width: 70px;
    bottom: -100px;
}
.sec-about .content-block h2 span{
	letter-spacing:-0.05em;
}
}
@media screen and (max-width:350px){
.sec-about .content-block h2 {
    font-size: 0.9rem;
}
.sec-about .content-block h2 span{
    font-size:1.1rem;
}
}


/*NEWS*/
.sec-news{
/*	background-color:#009fe8;*/
	background-color:#ffffff;
    padding: 85px 0 30px;
}
.sec-news .twocolumn-grid{
	margin:60px auto 90px;
}
.sec-news .twocolumn-item{
	text-align: center;
}
.sec-news .twocolumn-item img{
	/*border-radius:98px;*/
	border:1px #e4bdde solid;
	width: 100%;
	object-fit: cover;
	min-height:250px;
}
.sec-news .twocolumn-item h2{
	font-size:1.4rem;
	font-weight: 600;
	margin-bottom: 10px;
	text-align: left;
	line-height: 1.3;
    padding-bottom: 8px;
}
.sec-news .twocolumn-item p{
	font-size:0.9rem;
	text-align: left;
}
.sec-news-area{
	width: 100%;
	background-color:#ffffff;
}
.news-date{
	text-align: left;
	margin:0 auto 10px;
}
.news-date span{
	font-size:1.1rem;
}
@media screen and (max-width:500px){
.sec-news .twocolumn-item:nth-child(2){
	padding:0 10px;
}
}
@media screen and (max-width:450px){
.sec-news .twocolumn-item h2{
	text-align: center;
}
.news-date{
	text-align: center;
}
}
@media screen and (max-width:400px){
.sec-news a.btn-link{
	display: block;
}
}
.btn-block{
	margin-top: 30px;
	text-align: left;
}
.btn-block-centered{
	margin-top: 10px;
	text-align: center;
}
.btn-center{
	text-align: center;
}
/*準備中start*/
.btn-center a{
	position:relative;
}
/*
.btn-center a:after {
    content: '準備中';
    position: absolute;
    top: -3px;
    left: 50%;
    padding: 0px 15px;
    background-color: #990180;
    border-radius: 20px;
    color: #ffffff;
    font-size: 1rem;
    font-weight: 500;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
準備中end*/
a.btn-link {
	display: inline-block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	margin: auto;
	padding: 10px 40px;
	font-size:1.1rem;
	font-weight: bold;
	border: 5px solid #004095;
	background-color: #ffffff;
	color: #04095;
	border-radius: 25px;
	transition: 0.5s;
	box-shadow:5px 5px #004095;
	position:relative;
}
a.btn-link:before{
	content:'';
	position: absolute;
	width:12px;
	height:8px;
	top:25px;
	left:15px;
	background-image: url("images/common/link-dot.svg");
	background-size:contain;
	background-position:center center;
	transition: 0.5s all;
}
a.btn-link:hover{
	background-color: #e4bdde;
}
a.btn-link:hover:before{
	transform: scale(1.5) ;
}
a.btn-link-colored {
	display: inline-block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	margin: auto;
	padding: 10px 50px;
	font-size:1.4rem;
	font-weight: bold;
	color: #990180;
	border-radius: 25px;
	transition: 0.5s;
	position:relative;
	background-color: #ffffe9;
	border: 5px solid #990180;
	box-shadow:5px 5px #990180;
}
a.btn-link-colored:before{
	content:'';
	position: absolute;
	width:12px;
	height:8px;
	top:30px;
	left:25px;
	background-image: url("images/common/link-dot-colored.svg");
	background-size:contain;
	background-position:center center;
	transition: 0.5s all;
}
a.btn-link-colored:hover{
	background-color: #ffffff;
}
a.btn-link-colored:hover:before{
	transform: scale(1.5) ;
}

@media screen and (max-width:750px){
.btn-block{
	text-align: center;
}
}
@media screen and (max-width:500px){
a.btn-link-colored {
	font-size:1.2rem;
}
a.btn-link-colored:before{
	top:26px;
}
}
@media screen and (max-width:400px){
a.btn-link{
	font-size: 1rem;
}
a.btn-link:before{
	top:23px;
}
a.btn-link-colored {
	font-size:1rem;
	padding: 10px 25px;
	display: block;
}
a.btn-link-colored:before{
	top:24px;
	left:12px;
}
}

/*お問い合わせ*/
.sec-contact .content-area{
	padding-bottom: 50px;
}
.sec-contact .twocolumn-grid{
	gap:80px;
}
.sec-contact .twocolumn-item:nth-child(2){
	text-align: left;
}
.sec-contact .twocolumn-item h2{
	font-size:1.4rem;
	margin-bottom: 10px;
	line-height: 1.3;
}
.sec-contact .twocolumn-item h4{
	font-size:1.2rem;
	font-weight: bold;
	display: inline-block;
	border-radius: 25px;
	background-color:#eddb44;
	padding: 3px 20px;
	margin-bottom: 15px;
	color:#a24a93;
}

.sec-contact .twocolumn-item p{
	margin-bottom: 5px;
	font-size:1.2rem;
}

a.btn-contact {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	margin: auto;
	padding: 1rem 4rem;
	font-weight: bold;
	background: #eddb44;
	color: #a24a93;
	border-radius: 100vh;
	transition: 0.5s;
}
a.btn-contact:hover {
	color: #ffffff;
	background: #a24a93;
}
a.btn-contact:before {
    content: "\f0e0";
    position: relative;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: 15px;
}

@media screen and (max-width:750px){
.sec-contact .twocolumn-item:nth-child(2){
	text-align: center;
}
.sec-contact .twocolumn-item h4{
	display: block;
}
}


/*モバイルnavi*/
/*　ハンバーガーメニュー*/
.hamburger {
  display : block;
  position: fixed;
  z-index : 3;
  right : 20px;
  top   : 18px;
  width : 42px;
  height: 42px;
  cursor: pointer;
  text-align: center;
	background-color: #990180;
	border-radius:10px;
}
.hamburger span {
  display : block;
  position: absolute;
  width   : 30px;
  height  : 2px ;
  left    : 6px;
  background : #fff;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
  top: 10px;
}
.hamburger span:nth-child(2) {
  top: 20px;
}
.hamburger span:nth-child(3) {
  top: 30px;
}

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) {
  top : 20px;
  left: 6px;
  background :#ffffff;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
  top: 20px;
  background :#ffffff;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

/* メニュー背景　*/
nav.globalMenuSp {
  position: fixed;
  z-index: 2;
  top  : 0;
  left : 0;
  color: #004095;
  background: rgba( 255,255,255,0.9);
  text-align: left;
  width: 100%;
	height:100%;
	padding-left:20px;
/*  transform: translateY(-100%);*/
	transform: translateX(100%);
  transition: all 0.6s;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 100%;
  transition: .4s all;
}
nav.globalMenuSp ul li img{
	max-width:200px;
	padding-top: 60px;
}
nav.globalMenuSp ul li:last-child {
  padding-bottom: 0;
}
nav.globalMenuSp ul li:hover{
  background :#e4bdde;
}
nav.globalMenuSp ul li:nth-child(1):hover{
  background :#ffffff;
}

nav.globalMenuSp ul li a {
	font-size:1rem;
	line-height:1.2;
	font-weight:500;
	display: block;
	color: #004095;
	padding: 1em 0 1em 20px;
	text-decoration :none;
	position: relative;
}
nav.globalMenuSp ul li a:before {
	content:'';
	position: absolute;
	left:0;
	width:12px;
	height:8px;
	background-image: url("images/common/link-dot.svg");
	background-size:contain;
	background-position:center center;
}
nav.globalMenuSp ul li:nth-child(2) a:before,nav.globalMenuSp ul li:nth-child(4) a:before,nav.globalMenuSp ul li:nth-child(5) a:before,nav.globalMenuSp ul li:nth-child(6) a:before,nav.globalMenuSp ul li:nth-child(7) a:before {
	top:26px;
}
nav.globalMenuSp ul li:nth-child(3) a:before{
	top:36px;
}
/* クリックでjQueryで追加・削除 */
nav.globalMenuSp.active {
  opacity: 100;
  display: block;
	/*transform: translateY(0%);*/
	transform: translateX(25%);
}

/*サブページロゴ*/
.subpage-logo{
	background-image: url("images/header/bg-header.jpg");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 30px 20px;
	text-align: center;
}
.subpage-logo img{
	max-width: 300px;	
}

/*お城一覧ページ*/
.post-type-archive-castle #sidebar {
    display: none;
}
.post-type-archive-castle #main {
    width: 100%;
}
.post-type-archive-castle .content-in{
	margin: 0 auto;
	padding: 50px 15px;
	max-width:1000px;
}
/*ページネーション関連*/
.pagination-next-link {
  display: none;
}
.page-numbers {
  color: #004095;
  border: 1px solid #004095;
  border-radius: 50%;
	line-height:40px;
}
.pagination .current {
  background-color: #004095;
  color: #fff;
}
.page-numbers.dots {
  opacity: 1;
  background: none;
}
.pagination a:hover {
  background-color: #990180;
  color: #fff;
}

@media screen and (max-width:500px){
.post-type-archive-castle .content-in{
	padding: 50px 0;
}
}
@media screen and (max-width:480px){
.page-numbers {
	line-height:30px;
}
}

/*お知らせ関連*/
/*メインカラム&サイドバー調整*/
.blog .content-in,.category .content-in,.single .content-in{
	display:grid!important;
	gap:20px;
	grid-template-columns: 3.5fr 1fr;
	max-width:1140px;
	margin:0 auto;
}
.single .content-in{
	padding:50px 0;
}
.blog .content-in .main,.category .content-in .main,.single .content-in .main{
	max-width: 99%;
	width: inherit!important;
}
.blog .content-in .sidebar,.category .content-in .sidebar,.single .content-in .sidebar{
	max-width: 99%;
	width: inherit!important;
}
.eye-catch-wrap {
    display: block!important;
}
.blog .title-block,.category .title-block{
	padding: 50px 0 10px;	
}
@media screen and (max-width: 1023px){
.blog .content-in .main,.category .content-in .main,.single .content-in .main,.blog .content-in .sidebar,.category .content-in .sidebar,.single .content-in .sidebar{
	margin: 0!important;
}
}
@media (max-width: 900px){
.blog .content-in,.category .content-in,.single .content-in{
	grid-template-columns:1fr;
}
.blog .content-in .main,.category .content-in .main,.single .content-in .main{
	max-width: 100%;
}
.blog .content-in .sidebar,.category .content-in .sidebar,.single .content-in .sidebar{
	max-width: 100%;
}
}
@media (max-width: 500px){
.blog main.main,.blog div.sidebar,.category main.main,.category div.sidebar {
    padding: 0 0;
}
.single .content-in{
	padding:10px 0 30px;
}
}

.cat-label{
	display: none;
}
.cat-link{
	background-color:#990180;
}
.related-entry-card-meta, .entry-card-meta {
    padding: 0px 5px 5px;
    border-radius: 3px;
    border: 1px #000000 solid;
}
.entry-title, .archive-title {
    font-size: 24px;
    margin: 16px 0;
    line-height: 1.3;
    color: #990180;
}
.breadcrumb-caption {
    font-size: 0.9rem;
}

/*20240307追加*/
.page-id-1698 .content,.page-id-1700 .content{
	background-image: url("images/header/bg-header.jpg");
	background-position: center top;
	background-repeat: repeat;
	margin-top:0;
	padding:50px 10px 100px;
}
.page-id-1698 .main,.page-id-1700 .main{
	max-width: 900px;
    margin: 0 auto !important;
    border-radius: 85px;
}
.main .content{
	border:none;
}
.custom-block{
	max-width:800px;
    width: 100%;
	margin:0 auto;
	padding:30px 30px 50px;
}
.custom-contents .content-block h2{
	text-align:center;
	margin-bottom:20px;
}
.custom-contents .content-block h2 span{
	display: inline-block;
	font-weight:700;
	font-size:1.4rem;
	color:#004095;
}
.custom-contents .content-block h2 span::after {
    content: "";
    display: block;
    width: 100%;
    height: 7px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center bottom;
	padding-top:0;
    background-image: url('images/underline/about-002.svg'); 
}
.custom-contents .content-block h3{
	font-size:1rem;
}
.campaign-info{
	margin-top:30px;
}
.campaign-info h3{
	font-weight:700;
}
.campaign-info ul{
	padding:0;
	margin:0;
}
.campaign-info ul li{
	list-style:none;
	text-indent:-1em;
	padding-left:1em;
}
.campaign-info figure{
	margin-top:20px;
	margin-bottom:20px;
	text-align:center;
}
.campaign-contact{
	border:1px #000000 solid;
	border-radius:15px;
	margin-top:20px;
	margin-bottom:10px;
	padding:10px 5px;
	text-align:center;
	line-height:1.5;
}
.campaign-contact span{
	font-weight:700;
}
table{
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
table th,table td{
  padding: 10px 0;
  text-align: center;
}
table th{
	background-color:#990180;
	color:#ffffff;
}
table tr td{
  background-color: #dddddd;
	color:#888888;
}
table tr.meichewed td{
	background-color:#ebd944;
	color:#000000;
}
table tr.meichewed-limited td{
	background-color:#EB8317;
	color:#000000;
}
.custom-note{
	margin-top:20px;
}
.custom-note img{
	width:35px;
	height:20px;
	vertical-align: -3px;
    margin-right: 5px;
	border-radius:5px;
}
.internal-link{
	font-weight:700;
}
.tolist-note,.tocampaign-note{
	margin-top:15px!important;
}
.tolist-button{
	margin:10px auto;
}
.tolist-button a{
	font-weight:700;
	font-size:1rem;
	color:#ffffff;
	background-color: #990180;
	padding:8px 30px;
	display:inline-block;
	border-radius:30px;
	line-height: 1.2;
}
/*
.tolist-button a:after {
    content: "\f061";
    font-family: FontAwesome;
	position: absolute;
	top:10px;
	right:20px;
	transition: transform .3s ease-in-out;
}
*/
.tolist-button a i{
	transition: transform .3s ease-in-out;
}
.tolist-button a:hover{
	background-color: #c902b1;
}
.tolist-button a:hover i{
	transform: translateX(8px);
}
@media screen and (max-width: 834px){
.page-id-1698 .main,.page-id-1700 .main{
	padding:0 10px;
}
.page-id-1698 .content,.page-id-1700 .content{
	padding:0 10px 60px;
}
.custom-block{
	padding: 60px 30px;
}
}
@media screen and (max-width: 800px){
.custom-contents .content-block h2 span{
	font-size:1.2rem;
}
}
@media screen and (max-width: 500px){
.custom-block{
	padding: 60px 15px;
}
.custom-span{
	height: 0;
}
.tolist-note{
	margin-top:60px!important;
}
}
@media screen and (max-width: 400px){
.custom-block{
	padding: 50px 5px;
}
.tolist-button a{
	font-size:0.8rem;
}
}
/*202409追加*/
.twocolumn-item {
  width: 100%;
}

.news-slider-block {
  max-width: 100%;
  overflow: hidden; /* スライダーが親要素に収まるようにする */
}

.news-slider {
  width: 100%;
}

.news-slider .news-slider-img img {
  width: 100%;
  height: auto;
  display: block; /* 画像に余白が入らないようにする */
	margin: 0 auto; /* 左右中央に配置 */
}
 .news-slider-img {
    text-align: center; /* 子要素を中央に揃える */
}
.castle-num span.second{
	position: relative;
}
.castle-num span.second::before{
	position: absolute;
	top:-40px;
	left:-20px;
	content:'';
	width:35px;
	height:35px;
	background-image: url("images/common/second-mark.svg");
	background-repeat: no-repeat;
	background-size: contain;
}

/*20241126追加*/
.status{
	text-align: center;
	margin:0 auto 30px;
}
.status h3{
	padding: 5px 10px;
	background-color: #EBD944;
	color:#990180;
	font-size:1rem;
	font-weight:bold;
	border-radius:25px;
}

@media screen and (max-width:750px){
.status{
	margin:30px auto 30px;
}	
}