/*
Theme Name: 自分で作るテーマ
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Four is designed to be flexible, versatile and applicable to any website. Its collection of templates and patterns tailor to different needs, such as presenting a business, blogging and writing or showcasing work. A multitude of possibilities open up with just a few adjustments to color and typography. Twenty Twenty-Four comes with style variations and full page designs to help speed up the site building process, is fully compatible with the site editor, and takes advantage of new design tools introduced in WordPress 6.4.
Requires at least: 6.4
Tested up to: 6.5
Requires PHP: 7.0
Version: 1.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/


@charset "UTF-8";@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,700,800|Playfair+Display+SC:400,700,900);abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:98%;vertical-align:baseline;background:transparent}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}ins{color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0}input,select{vertical-align:middle}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}html{font-size:1.0625rem;font-family:-apple-system, blinkMacSystemFont, /* Macの欧文はSan Francisco (OS X 10.11以降) */
               'Helvetica Neue', /* Macの欧文 (OS X 10.10以前) */
               'Segoe UI',       /* Windowsの欧文 */
               YuGothicM,        /* Windows8.1以上は游ゴシック */
               YuGothic,         /* Macの游ゴシック */
               Meiryo,           /* 游ゴシックが入っていないWindows */
               sans-serif;}p{margin:1rem auto;line-height:1.5}a{color:#000}a:focus{color:#959595}body{background-color:#fff}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}small{font-size:0.8rem}sub,sup{font-size:0.8rem;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}strong{font-weight:bold}strong.red{color:#e00909;font-weight:normal}i{font-weight:normal;font-style:italic}input[type=email],input[type=text],input[type=url]{-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #e0e3e4;padding:0.5rem}textarea{-webkit-box-sizing:border-box;box-sizing:border-box;border:1px solid #e0e3e4;padding:0.5rem}p{margin:5px auto}.wp-caption{}.wp-caption-text{}.sticky{}.gallery-caption{}.bypostauthor{}.alignright{}.alignleft{}.aligncenter{}.screen-reader-text{}main .navigation{padding:20px;text-align: center;}#sub{padding:20px}#sub .widget{padding:20px}
/*# sourceMappingURL=style.css.map */
/* IE8〜11はメイリオ */
@media screen\0 {
  body {
    font-family: 'Segoe UI', /* Windowsの欧文 */
                 Meiryo,     /* メイリオ */
                 sans-serif;
  }
}

html{
	margin-top:0!important;
}

/* Windows */
@font-face {
  font-family: YuGothicM;
  font-weight: normal;
  src: local('YuGothic-Medium'),  /* Mediumを明示的に指定 */
       local('Yu Gothic Medium'), /* Chrome用 */
       local('YuGothic-Regular'); /* Windows8.1ではMediumがないのでRegularを指定 */
}
@font-face {
  font-family: YuGothicM;
  font-weight: bold;
  src: local('YoGothic-Bold'), /* Boldはそのまま */
       local('Yu Gothic');     /* Chrome用 */
}
img{
	image-rendering: -webkit-optimize-contrast;
}

:root {
  --header_bg:#fff;
  --header_nav_li_color: #97806d;
  --header_color:#ffffff;
  --logo_color: #ffffff;
  --bg_pink:#fceeef;
  --a_color:#5A4C37;
  --body_color:#383838;
  --body_bg:#fff;
  --footer_bg:#F0F0F0;
  --footer_color1:#3C3C3C;
  --footer_color2:#fff;
  --line_pink:#ffa7ab;
  --sns_btn:#fcd4d6;
  --blog_bg: #fff5f6;
  --blog_title:#c77192;
}

@media only screen and (min-width: 768px){
	.sp{
		display:none!important;
	}
}
@media only screen and (max-width: 767px){
	.pc{
		display:none!important;
	}
}

/*==================================================
スライダーのためのcss
===================================*/
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
  width:100%;
  margin:0 auto;
}

.slider img {
  width:100vw;/*スライダー内の画像を60vwにしてレスポンシブ化*/
  height:auto;
}

.slider .slick-slide.slick-center{
  transform: scale(1);/*中央の画像のサイズだけ等倍に*/
  opacity: 1;/*透過なし*/
}

/*ドットナビゲーションの設定*/
.slick-dots {
  text-align:center;
  margin:20px 0 0 0;
}

.slick-dots li {
  display:inline-block;
  margin:0 5px;
}

.slick-dots button {
  color: transparent;
  outline: none;
  width:8px;/*ドットボタンのサイズ*/
  height:8px;/*ドットボタンのサイズ*/
  display:block;
  border-radius:50%;
  background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
  background:#333;/*ドットボタンの現在地表示の色*/
}

/*==================================================
スライダーのためのcss ここまで
===================================*/

#main {
margin: 0;
  background-color: var(--body_bg);
  color: var(--body_color);
  /*font-family: 'PT Serif', serif;*/
  width: 100%;
}


a {
  color: var(--a_color);
  text-decoration: none;
  transition: transform .3s;
}

a:hover {
  opacity: 0.6;
}

.campaign_center {
	display: flex; /* フレックスボックスで整列 */
  flex-direction: column; /* 子要素を縦方向に並べる */
  align-items: center; /* 水平方向で中央揃え */
  list-style: none; /* liの箇条書きマーカーを削除 */
  padding: 0; /* 余白をリセット */
  margin: 0; /* 余白をリセット */
}

.bg_pink {
  background-color: var(--bg_pink);
  padding: 0.5em 1em;
}

.header {
  position: fixed;
	top:0;
  background-color: var(--header_bg);
  text-align: center;
  width: 100%;
  z-index: 999;
}

.header nav{
  background-color: var(--header_ul_color);
}




.logo {
  font-size: 1.5em;
  font-weight: bold;
  text-decoration: none;
  color: var(--logo_color);
  display: block;
}



.title {
  	font-size: 1.8em;
    font-weight: normal;
    line-height: 1.8em;
	margin-bottom:1.5em;
}
.title.title-right{
	text-align:right;
}

.title.title-center{
	text-align:center;
}

.title span {
  	display: block;
}

.shop_info {
  width: 60%;
  line-height: 1.3em;
}

.shop_info {
  margin: auto;
  text-align: left;
}

.shop_info table {
  margin: 1em auto;
  width: 80%;
}

.studio a ,
.line img {
  width: 50%;
}

.shop_info table th,
.shop_info table td {
  padding: 0.5em 0;
  font-weight: normal;
}

.price {
  width: 100%;
  line-height: 1.3em;
  margin: auto;
  text-align: left;
}

.price table {
  margin: 1em auto;
  width: 50%;
}

.price table th,
.price table td {
  padding: 0.5em 0;
  font-weight: normal;
}
.shop_img {
  width: 90%;
  text-align: center;
  margin: auto;
}

.shop_img img {
  width: 25%;
  margin: 0.5em;
}

.map {
  text-align: center;
}

.result-title {
  margin: 1em;
  font-size: 1.8em;
}

.gallery {
  width: 60%;
  margin: 1em auto;
  justify-content: center;
}
  
.gallery img {
  width: 100%;
  padding: 0.5em;
}

.gallery p {
  font-size: 1.3em;
  margin: 0.5em 0;
}

.shop_info {
  width: 60%;
  margin: auto;
  text-align: left;
}
  
.shop_info table {
  margin: 1em auto;
  width: 100%;
}

.shop_info table th,
.shop_info table td {
  padding: 0.5em 0;
}

  
.shop_img {
  width: 90%;
  text-align: center;
  margin: auto;
}
  
.shop_img img {
  width: 25%;
  margin: 0.5em;
}
  
.map {
  text-align: center;
  width: 80%;
  height: 400px;
  margin: 2em auto;
}
  
.result-title {
  margin: 1em;
  font-size: 1.8em;
}
  
.pro {
  width: 90%;
  display: flex;
  margin: auto;
  justify-content: center;
}

.pro img {
  width: 30%;
}

.item {
  display: inline-block;
  width: 30%;
  margin: 0.5em;
}

.campaign_item {
  display: inline-block;
  width: 40%;
  margin: 0.5em;
}

.campaign_item img,
.item img,
.room img,
.studio img,
iframe {
  width: 100%;
}

.sns, .sns2 {
  display: flex;
  justify-content: center;
}

.sns a {
  margin: 1em;
  justify-content: center;
  align-items: center;
  padding: 1em 0.5em;
  border: 1px solid var(--sns_btn);
  box-shadow: 5px 5px   var(--sns_btn);
  background-color: #fff;
}

.sns2 a {
  margin: 1em;
  justify-content: center;
  align-items: center;
  padding: 1em;
  border: 1px solid  var(--sns_btn);
  box-shadow: 5px 5px   var(--sns_btn);
  width: 300px;
  background-color: #fff;
}

.sns_a {
  display: flex;
  width: 300px;
}

.room {
  width: 25%;
  padding: 0.5em;
}

.room_p {
  text-align: center;
}

.studio {
  display: flex;
  flex-wrap: wrap;
  padding: 1em;
  margin: auto;
}

.icon_wrap {
  	margin-right: 1em;
}
/* 初期状態の設定 */


#breadcrumb ul,
#site-footer > div,
.contents {
    max-width: 1290px;
    width: 100%;
    margin: 0 auto;
    padding: 4em 90px 4em;
}

.entry-header .contents{
	padding-top:0;
	padding-bottom:0;
}

#privacy-policy{
	padding-top:0;
}

footer {
  background-color: var(--footer_bg);
  padding: 1em 0;
  justify-content: space-between;
}

#site-footer{
	background-color:#FDAF00;
}

#site-footer > div{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:flex-start;
	padding-top:1em;
	padding-bottom:1em;
}

#footer_logo{
	margin:0;
	color:#090980;
}
#footer_logo strong{
	display: block;
    width: 100%;
    font-size: 1.7em;
    line-height: 1;
}
#footer_logo span{
	font-size: 0.74em;
}

#footer_right h2{
	font-size:1em;
	margin:2em 0 1em;
	color:#fff;
}
#footer_right a{
	display:block;
	color:#fff;
}
#footer_right a:before {
    content: "＞";
}

#footer_nav {
	width:100%;
}

#footer_nav a {
  color:  var(--footer_color1);
}
footer ul{
	list-style: none;
}

.footer_menu {
    display: flex;
    flex-wrap: wrap; /* 折り返しを許可 */
    justify-content: space-between; /* 均等配置 */
    max-width: 600px; /* 適宜調整 */
}

footer ul li {
    width: calc(50% - 10px); /* 2列にする */
    list-style: none;
	margin-bottom:1em;
}

#footer_bottom{
	width:100%;
	text-align:center;
	border-top:solid #3B3E43 1px;
}
.footer_menu .sub-menu{
	display:none;
}

.menu-btn {
  display: none;
}

.title2 {
  text-align: left;
  border-bottom: 3px solid var(--line_pink);
  padding: 0.5em;
  line-height: 1.3;
}

.title3 {
  text-align: left;
  padding: 0.5em;
}

.li_p {
  padding: 0.5em;
}

.guide {
  padding-right: 1em;
  color: var(--line_pink);
}

.frame {
  border: 2px solid var(--line_pink);
  padding: 1em;
  margin-top: 2em;
}

.line {
  width: 50%;
  justify-content: center;
  margin: 1em auto;
}


h2 {
  font-size: 1.2em;
}

.price table th,
.price table td {
  padding: 0.5em;
  border-bottom: 1px solid var(--line_pink);
}

.logo img {
	width: 250px;
}

.madori img {
	width:50%;
}

.mb {
	margin-bottom: -30px;
}

.list_blog {
  width: 100%;
}

.list_blog img {
  width: 100%;
  margin: auto;
  display: block;
}

.blog_title {
  font-weight: bold;
  font-size: 1.2em;
  color: var(--blog_title);
}

.list {
  display: flex;
  margin: auto;
  flex-wrap: wrap;
  justify-content: start;
}

.blog1 {
  width: 30%;
  background-color: var(--blog_bg);
  box-sizing: border-box;
  padding: 0.5em 1em;
  margin-right: 5%;
  margin-bottom: 1em;
}

.blog1:nth-child(3n) {
  margin-right: 0;
}

.single_title {
  font-size: 1.5em;
  margin-left: 0.5em;
}

.single_sentence {
  margin: 0.5em 1em;
}

.left {
  text-align: left;
}

.item_category {
  margin-top: 30px;
}

.item_category span {
  color: #ffa7ab;
}

.item_category a {
  margin: 1em;
}

.studio_kagu {
	display:block;
}

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

  .title {
    font-size: 1.4em;
  }

  .sns a {
    margin: 0.5em;
    width: 30%;
    display: block;
  }
  
  h2 {
    font-size: 1em;
  }

  .sns_center{
    text-align: center;
  }

  .sns {
    display: flex;
  }

  .item img {
      width: 50%;
  }

  .item,
  .shop_info {
      width: 90%;
  }

  .map {
      width: 100%;
      height: 300px;
  }

  .pro {
      display: inline-block;
  }

  .room,
  .gallery img {
      width: 45%;
  }

  .room img,
  .studio a {
      width: 100%;
  }

  .line img {
      width: 100%;
  }
  
  .studio {
      padding: 0;
  }
	.shop_info table td {
 		text-align: left;
		margin-left:1em;
	}


    .h50 {
        height: 50vh;
    }

    iframe {
        height: 250px;
    }

    .gallery {
        margin: 1em auto;
        padding: 1em;
        justify-content: center;
        width: 100%;
    }
    .center{
        flex-wrap: wrap;
        justify-content: center;
    }
    .item{
        width: 49%;
        margin: 0.5em 0;
        margin-right: 2%;
    }
    .item:nth-child(even){
        margin-right: 0;
    }
    .item img{
        width: 100%;
        padding: 0;
    }

    .item_li {
      display: flex;
    }

    .shop_info {
      font-size: 1em;
    }

    .gallery p {
      font-size: 1.2em;
      margin: 0.5em 0;
    }

    .shop_info th {
      width: 25%; 
    }

    .shop_info table th,
    .shop_info table td {
      display: block;
    }
    
    .price table,
    .madori img{
      width: 100%;
    }
    
    .price table th,
    .price table td {
      padding: 0.5em;
      border-bottom: 1px solid var(--line_pink);
    }

    .footer_nav {
      display: block;
    }

    .footer_nav li span.menu-item-description {
      display: none;
    }

    .list {
      display: block;
    }

    .blog1 {
      width: 100%;
    }

    .single_title {
      font-size: 1.3em;
    }

    .icon_wrap {
      margin-right: 0;
    }

    .sns_p {
      font-size: 0.8em;
    }
	
	.mobile_left {
		text-align:left;
		padding:0 0.5em;
	}
}


.navtext-container {
	width: 100%;
	height: 90px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	align-items: center;
	left: 0;
	padding-left: 1.5em;
}

.navtext-container a{
	color:#000;
}
.nav_cont_link{
	display: flex;
	align-items: center;
}

.nav_cont_link ul li{
	display:inline-block;
	margin-right:30px;
}





.nav_cont_link .header_nav li strong{
	display: inline-block;
	font-size: 1em;
	text-decoration: none;
	color: var(--header_nav_li_color);
	margin-right: 1em;
	font-weight:normal;
}

.nav_cont_link .header_nav li span.menu-item-description{
	text-align: center;
	font-size: 0.7em;
	line-height: 1.4;
	color: #ccc;
}

.nav_cont_link .header_nav a,
a {
	transition: .3s;
	text-decoration: none;
}

.nav_cont_link .header_nav a:before{
	content:"＞";
}

.nav_cont_link .header_nav a:hover,
a:hover {
	opacity: 0.6;
}
/* Navbar Text */
.navtext {
	text-transform: uppercase;
	color: var(--body_color);
	letter-spacing: 4px;
	font-size: 20px;
}

.nav_cont_link #submenu{
	list-style:none;
	letter-spacing: 4px;
}

.header_nav li span.menu-item-description,
.item p{
	font-size: 0.8em;
}

.header_nav li strong {
	font-size: 1em;
}

#container{
	padding-top:90px;
}

@media screen and (min-width: 761px) {
	.nav_cont_link .header_nav > ul > li > a{
		display:flex;
		align-items:center;
		font-weight:bold;
		height:76px;
	}
	.menu .sub-menu {
		display: none; /* 初期状態で非表示 */
		list-style: none; /* インデントを調整 */
		border-top:solid #07208B 5px;
		background-color:rgba(255,255,255,0.75)
	}
	.menu .menu-item-has-children{
		position:relative;
	}
	.menu .menu-item-has-children > a {
		cursor: pointer;
		display: block;
		position: relative;
	}
	.menu .menu-item-has-children > a::after {
		content: "▼"; /* 矢印アイコン */
		position: absolute;
		right: -1.2em;
		font-size: 12px;
		transition: transform 0.3s ease;
	}
	.menu .menu-item-has-children.active > a::after {
		transform: rotate(180deg); /* 開いている時に矢印を反転 */
	}
	.menu .menu-item-has-children .sub-menu{
		position:absolute;
		top:100%;
		left:0;
		width: 200px;
	}
	.menu .menu-item-has-children .sub-menu li{
		display:block;
		margin-right:0;
		text-align:left;
		border-bottom:solid #707070 1px;
	}
	.menu .menu-item-has-children .sub-menu li a{
		padding:0.5em 0.3em;
		display:block;
		line-height:1.5;
	}
}
@media screen and (max-width: 760px) {
	/* Nav items */
	.menu {
		list-style: none;
		position: absolute;
		width: 270px;
		height: calc(100vh - 70px);
		top: 0;
		right: 0;
		margin-top: 76px;
		padding: 0 0 10px 0;
		clear: both;
		background: var(--header_bg);
		transition: transform 0.3s cubic-bezier(0.04, 0.04, 0.12, 0.96), opacity 0.3s ease;
		transform: translateX(100%); /* 初期状態：画面外（右側） */
		opacity: 0; /* 初期状態：非表示 */
	}

	/* Hamburger menu button */
	.menu-btn:checked ~ .menu {
		transform: translateX(0); /* 表示状態：画面内へスライド */
		opacity: 1; /* 表示状態：表示 */
		padding: 0 1em 1em;
		transition: transform 0.3s cubic-bezier(0.04, 0.04, 0.12, 0.96), opacity 0.3s ease;
	}


	/* Hamburger menbu text */
	.menu a {
		text-decoration: none;
		font-weight: 500;
		letter-spacing: 2px;
		font-size: 16px;
		text-transform: capitalize;
		color: var(--body_color);
		opacity: 0;
		transition: 0.5s;
	}

	.menu li{
		opacity: 0;
		transition: 0.5s;
	}
	.menu > ul > li{
		border-bottom:solid #070707 1px;
	}
	.menu > ul > li ul li{
		border-bottom:dashed #070707 1px;
	}
	.menu > ul > li ul li:last-child{
		border-bottom:none;
	}
	.menu li a{
		display:block;
		padding:1.2em 0;
		font-size:0.8em;
	}
	.menu li ul li{
		margin-left:1em;
	}
	
	.menu > ul > li ul li:first-child a{
		padding-top:0;
	}
	
	.menu li ul li a{
		display:flex;
		align-items:center;
		line-height:1.5;
	}
	.menu li ul li a:before{
		content:"";
		display:block;
		height:1px;
		width:1em;
		background-color:#070707;
		font-weight:bold;
		margin-right:0.5em;
	}

	.menu-btn:checked ~ .menu a,
	.menu-btn:checked ~ .menu li {
		opacity: 1;
		transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
	}

	.menu-btn {
		display: none;
	}

	.menu-icon {
		display: inline-block;
		position: relative;
		cursor: pointer;
		padding: 36px 25px;
		-webkit-tap-highlight-color: #fff;
		background-color: #fff;
	}

	.navicon {
		background: none;
		display: block;
		height: 2px;
		width: 26px;
		position: relative;
		transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
	}

	.navicon:before {
		content: "";
		display: block;
		height: 100%;
		width: 100%;
		position: absolute;
		background: #07208B;
		transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
		top: -6px; /* 上の線の位置調整 */
	}

	.navicon:after {
		content: "";
		display: block;
		height: 100%;
		width: 100%;
		position: absolute;
		background: #07208B;
		transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
		top: 6px; /* 下の線の位置調整 */
	}

	/* Hamburger Menu Animation Start */
	.menu-btn:checked ~ .menu-icon .navicon:before {
		transform: rotate(-45deg);
		top: 0; /* 上の線を中央に移動 */
	}

	.menu-btn:checked ~ .menu-icon .navicon:after {
		transform: rotate(45deg);
		top: 0; /* 下の線を中央に移動 */
	}

	.menu-btn:checked ~ .menu-icon .navicon {
		background: rgba(0, 0, 0, 0); /* 中央の線を透明化 */
	}




	/* Hamburger Menu Animation End */
	
	.logo{
		padding-left:0.5em;
	}

	/* Navbar Container */
	

	.nav_cont_link{
		display: flex;
		align-items: center;
	}

	.nav_cont_link ul li{
		display:inline-block;
		margin-right:0;
	}



	.nav_cont_link .header_nav li {
		display:block;
		text-align:left;
	}

	.nav_cont_link .header_nav li strong{
		display: inline-block;
		font-size: 1em;
		text-decoration: none;
		color: var(--header_nav_li_color);
		margin-right: 1em;
		font-weight:normal;
	}

	.nav_cont_link .header_nav li span.menu-item-description{
	  text-align: center;
	  font-size: 0.7em;
	  line-height: 1.4;
	  color: #ccc;
	}

	.nav_cont_link .header_nav a,
	a {
	  transition: .3s;
	  text-decoration: none;
	}

	.nav_cont_link .header_nav a:hover,
	a:hover {
	  opacity: 0.6;
	}
	/* Navbar Text */
	.navtext {
		text-transform: uppercase;
		color: var(--body_color);
		letter-spacing: 4px;
		font-size: 20px;
	}

	.nav_cont_link #submenu{
		list-style:none;
		letter-spacing: 4px;
	}

	.header_nav li span.menu-item-description,
	.item p{
		font-size: 0.8em;
	}

	.header_nav li strong {
		font-size: 1em;
	}
}

.header {
	text-align: right;
}

.more_btn{
	display:flex;
	align-items:center;
	justify-content:flex-start;
	margin-top:2em;
}
.more_btn.more_btn_right{
	justify-content:flex-end;
}
.more_btn span{
	font-size:1.2em;
	margin-right:1.5em;
}
.more_btn i{
	font-size:2em;
}
.more_btn i:before{
	color:#39951E;
}

#breadcrumb{
	border-top:#707070 solid 1px;
	border-bottom:#707070 solid 1px;
	background-color:#fff;
	display:none;
}

#breadcrumb ul{
	list-style:none;
	padding-top:0;
	padding-bottom:0;
}

#breadcrumb ul li{
	display:inline-block;
	margin-left:0.5em;
}
#breadcrumb ul li:after{
	content:">";
	display:inline-block;
	margin-left:0.5em;
}
#breadcrumb ul li:first-child{
	margin-left:0;
}

#breadcrumb ul li:last-child:after{
	content:none;
}

#breadcrumb ul li a{
	text-decoration:underline;
	padding:1em 0;
	display:inline-block;
}


.titleh2 {
    color: #000;
    font-size: 40px;
    text-align: center;
    margin-bottom: 1em;
}

.titleh2 span{
	display:inline-block;
	position:relative;
	z-index:1;
	line-height:1;
}

.titleh2 span:before{
	content:"";
	display:block;
	width:330px;
	height:30px;
	background-color:#FFD26E;
	border-radius:15px;
	position:absolute;
	z-index:-1;
	bottom:-15px;
	left:50%;
	margin-left:-165px;
}


.titleh4{
	line-height:1.2em;
}

#topics_list_page article{
	margin-bottom:5em;
	overflow:hidden;
}
 
#topics_list_page article iframe{
	display:none;
}


#topics_list_page article .date_cate{
	margin-bottom:0.5em;
}

.news_list{
	list-style:none;
}

.news_list li{
	border-bottom: dashed #07208B 1px;
}

.news_list li a{
	display:block;
	padding:2em 0;
}
.news_list li a > div{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}
.news_list li a > div p{
	display:inline-block;
	margin-top:0.2em;
	line-height:1.5;
	width:calc(100% - 143px);
}
.news_list li a .cate_name{
	display:inline-block;
	padding:0.8em 0;
	font-size:1em;
	width:121px;
	color:#fff;
	text-align:center;
	border-radius:20px;
	margin-right: 2em;
}
.news_list li a .date{
	display:inline-block;
	margin-right:1em;
}
.news_list li a .news_list_title{
	line-height:1.5;
}
.news_list li a > div > .arrow_date{
	display:flex;
	justify-content:flex-end;
	align-items:center;
}
.news_list li a > div > .arrow_date > span{
	font-size:0.8rem;
	color:#989898;
	margin-right:1.5em;
}
.news_list li a > div > .arrow_date > i{
	font-size:2em;
}

.news_list li a > div > .arrow_date > i:before{
	color:#39951E;
}

#single_header .title{
	margin-bottom:0;
}

#single_header{
	margin-bottom:3em;
}

#list_link{
	font-size:0.8em;
}
#post_cont img{
	display:block;
	margin-bottom:1em;
}

.wpcf7-form textarea,
.wpcf7-form input{
	width:100%;
	margin-bottom:1em;
}
.wpcf7-form input{
	width:auto;
}
.wpcf7-form-control.wpcf7-submit {
	width:auto;
    display: inline-block;
    padding: 12px 24px;
    font-weight: bold;
    color: #fff; /* テキストの色 */
    background: #69AD50; /* グラデーション背景 */
    border: none; /* ボーダーをなくす */
    border-radius: 30px; /* 角を丸くする */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* ボタンに影をつける */
    cursor: pointer; /* カーソルをポインタに */
    transition: all 0.3s ease; /* ホバー時のアニメーション */
}

.wpcf7-form-control.wpcf7-submit:hover {
    background: linear-gradient(90deg, #388e3c, #66bb6a); /* ホバー時の色変更 */
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2); /* 影を強調 */
}

.wpcf7-form-control.wpcf7-submit:active {
    background: #2e7d32; /* アクティブ時の色 */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* 押した感を演出 */
    transform: translateY(2px); /* ボタンが押し込まれるように */
}
.wpcf7-spinner{
	display:none;
}

.top_slide2 img{
	display:block;
	width:100%;
}

.page-thumbnail{
	width:calc(100% - 56px);
	height:30vh;
	background-size:cover;
	background-position:center;
	position:relative;
	border-radius: 0px 42px 50px 0px;
	overflow:hidden;
}
.page-thumbnail:before{
	content:"";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:1;
	background-color:#1A1A1A;
	opacity:0.2;
}
.page-thumbnail div{
	position:absolute;
	top:0;
	left:56px;
	width:calc(100% - 56px);
	height:100%;
	display:flex;
	justify-content:center;
	align-items:flex-end;
	z-index:2;
}
.page-thumbnail h1{
	text-align:center;
	color:#FDAF00;
	font-weight:500;
	font-size:2.8em;
	font-family: "M PLUS Rounded 1c", sans-serif;
	background-color:#fff;
	border-radius:20px 20px 0 0;
	padding:0.3em 1.5em 0;
	line-height:1.5;
}
.page-thumbnail h1 span{
	display:block;
	font-size:0.5em;
	margin-top:0.8em;
  	font-weight: 200;
}

.child_page_contents{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	padding-top:0;
	padding-bottom:0;
}
.child_page_contents .right_contents{
	width:270px;
}

.child_page_contents .left_contents{
	width:calc(100% - 270px);
	min-height:80vh;
}

.right_contents #parent{
	background-color:#07208B;
	color:#fff;
	padding-left:1.5em;
	height:160px;
	display:flex;
	align-items:center;
	border-bottom:solid #C2C4C6 3px;
}
.right_contents #parent h2{
	font-size:2em;
}

.right_contents #parent p{
	display: block;
    font-size: 1.2em;
    margin-top: 0.3em;
    font-weight: 200;
}

.right_contents ul{
	list-style:none;
}

.right_contents ul li{
	border-bottom:solid #707070 1px;
}

.right_contents ul li a{
	display:block;
	font-size:1.2em;
	padding:1.2em 1em;
	line-height:1.5;
}

.left_contents{
	border-right:solid #707070 1px;
}
.left_contents #child_page_title{
	height:160px;
	display:flex;
	align-items:center;
	border-bottom:solid #C2C4C6 3px;
	color:#FF8900;
	position:relative;
	font-size:2.5em;
	font-weight:normal;
	line-height:1.5;
}

.left_contents #child_page_title:after{
	content:"";
	display:block;
	background-color:#FF8900;
	width:211px;
	height:4px;
	position:absolute;
	bottom:-3px;
	left:0;
}



body.archive,
body.blog,
body.single
{
	background-color:rgba(142,151,198,0.18);
}

.post_list_wrap{
    font-size: 1.3em;
    padding-right: 2em;
}

#category_wrap{
    padding-top: 2em;
    margin-bottom: 2em;
}
#category_wrap h2{
    color: #fff;
    background-color: #07208B;
    line-height: 1.8;
    padding: 0 0.3em;
    margin-bottom: 1em;
}

.post_list_wrap ul{
    list-style: none;
}

#category_wrap ul{
	display:flex;
	width:100%;
	overflow-x:scroll;
}
#category_wrap li{
    display: inline-block;
    background-color: #fff;
    border: solid #707070 1px;
    line-height: 1.8;
    padding: 0;
    margin-right: 0.5em;
}

#category_wrap li a{
	display:block;
	padding:0 0.5em;
}

.column_list li{
    border-bottom: solid 1px #8D98C6;
    padding-bottom: 2em;
    margin-bottom: 2em;
}

.column_list li a{
    display: flex;
    align-items: flex-start;
}

.column_list li a .thumbnail{
    width: 392px;
}
.column_list li a .thumbnail img{
    display: block;
    width: 100%;
    height: auto;
}
.column_list li a .list_cont{
    width: calc(100% - 392px);
    padding-left: 1em;
}

.single .cate_date,
.column_list li a .list_cont .cate_date{
    display: flex;
    align-items: center;
    font-size: 0.8em;
    margin-bottom: 1em;
}
.single .cate_date .cate_name,
.column_list li a .list_cont .cate_name{
    color: #fff;
    background-color: #07208B;
    display: inline-block;
    line-height: 1.8;
    padding: 0 0.2em;
    margin-right: 1em;
}
.single .cate_date .date,
.column_list li a .list_cont .cate_date .date{
    display: inline-block;
}

.column_list li a .list_cont h3{
    line-height: 1.5;
    margin-bottom: 0.8em;
}

.pagination .nav-links span,
.pagination .nav-links a{
    width: 2em;
    line-height: 2em;
    text-decoration: none;
    margin-right: 0.5em;
    display: inline-block;
}

.pagination .nav-links .current{
    color: #fff;
    background-color: #707070;
    border: solid 1px #707070;
}

.pagination .nav-links a{
    border: solid 1px #707070;
}

.single .thumbnail{
	margin-bottom:1em;
}
.single .thumbnail img{
	width:100%;
	display:block;
	height:auto;
}

.single .post_list_wrap{
	padding-top:1em;
	padding-bottom:5em;
}
.single h1{
	font-size:1.2em;
	line-height:1.5;
	margin-bottom:0.8em;
}

.right_contents ul li.current{
	background-color:#8D98C6;
}
.right_contents ul li.current a{
	color:#fff;
}

.single .modoru{
	text-align:center;
	margin-top:2em;
}

.single .modoru a{
	display:inline-block;
	border: 1px solid #707070;
	color:#707070;
	line-height:1.8;
	padding:0 0.5em;
}

.single .entry-content p{
	line-height:1.8;
}

.parent-pageid-28 .entry-content{
	background-size:100%;
}

.parent-pageid-28 .child_page_contents .right_contents{
	display:none;
}
.parent-pageid-28 .child_page_contents .left_contents{
	width:100%;
	border:none;
}
.parent-pageid-28 .left_contents #child_page_title{
	color:#fff;
}

@media only screen and (max-width: 767px){
	.page-thumbnail{
		width: 100%;
		border-radius:0;
	}
	.page-thumbnail div{
		width:100%;
		left: 0;
	}
	#container{
		padding-top:60px;
	}
	article.contents{
		padding-top:6em;
	}
	.navtext-container{
		height:60px;
	}
	#submenu{
		display:none;
	}
	
	.navtext-container{
		padding-left:0;
	}
	.logo img{
		width:200px;
	}
	.menu-icon{
		padding: 29px 21px;
	}
	.navicon{
		width:18px;
	}
	#breadcrumb ul,
	#site-footer > div,
	.contents{
		padding:1.5em 1em;
	}
	.menu{
		margin-top:60px;
	}
	#breadcrumb{
		display:none;
	}
	#site-footer > div{
		padding:0 1em;
		display:block;
	}
	#footer_right a{
		text-align:left;
	}
	footer ul li{
		display:block;
		margin-bottom:0;
		width:100%;
	}
	footer ul li a{
		line-height:1.5;
		display:block;
		padding:0.8em 0;
		font-size: 0.8em;
	}
	main .navigation{
		padding:1em 0;
	}
	
	#footer_right{
		margin-top:2em;
	}
	
	#footer_right ul li:last-child{
		border:none;
	}
	
	#footer_bottom p{
		font-size:0.8em;
	}
	
	
	.news_list li a{
		padding:1em 0;
	}
	.news_list li a > div p .date{
		font-size:0.8em;
		display:inline-block;
		margin-left:1em;
	}
	.news_list li a{
		padding:1em 0;
	}
	.news_list li a .news_list_title{
		display:block;
		margin-top:0.5em;
	}
	.news_list li a .cate_name {
		padding: 0.2em 0;
		font-size: 0.8em;
		width: 6em;
		color: #fff;
		margin-right: 1em;
		vertical-align: middle;
	}
	.news_list li a .date{
		vertical-align:middle;
	}
	.child_page_contents{
		flex-wrap:wrap;
	}
	.child_page_contents .left_contents,
	.child_page_contents .right_contents{
		width:100%;
		padding-right:0;
		border:none;
		min-height:auto;
	}
	.child_page_contents .right_contents{
		margin-top:5em;
	}
	.page-child .right_contents{
		display:none;
	}
	.page-child .child_page_contents{
		padding-bottom:0;
	}
	.post_list_wrap{
		font-size:1em;
	}
	#category_wrap{
		display:none;
	}
	.right_contents #parent{
		padding:0.5em;
		height:auto;
	}
	.right_contents #parent h2,
	.right_contents #parent p{
		display:inline-block;
	}
	.right_contents #parent h2{
		font-size:1em;
		margin-right:0.5em
	}
	.right_contents #parent p{
		font-size:0.8em;
		margin:0;
	}
	.right_contents ul li a{
		font-size:1em;
		padding:1em;
	}
	.archive .contents,
	.blog .contents{
		padding-top:0;
	}
	
	.page-thumbnail h1{
		font-size: 1.5em;
		padding-left:0.5em;
		padding-right:0.5em;
	}
	.left_contents #child_page_title{
		height:auto;
		font-size:1.5em;
		padding-bottom:0.5em;
		margin-bottom:1em;
	}
	.entry-content{
		overflow:hidden;
	}
	.column_list{
		padding-top:1em;
	}
	.column_list li{
		padding-bottom:0;
		margin-bottom:0;
	}
	.column_list li a{
		display:block;
	}
	.column_list li a .thumbnail{
		width:100%;
	}
	.column_list li a .list_cont{
		padding-left:0;
		width:100%;
	}
	.column_list li a .list_cont p{
		display:none;
	}
	.menu-btn:checked ~ .menu{
		height:calc(100vh - 60px);
		overflow-y:scroll;
	}
	.titleh2{
		font-size:1.5em;
	}
	.titleh2 span{
		padding:0 1em;
	}
	.titleh2 span:before{
		width:100%;
		height:0.5em;
		bottom: -0.25em;
		left:0;
        margin-left: 0;
	}
}

.page-id-3 .entry{
	padding-top:5em;
	min-height:calc(100vh - 307px);
}




