/*
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;
  }
}

/* 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:#5A4C37;
  --body_bg:#F2F5F0;
  --footer_bg:#585348;
  --footer_color1:#fff;
  --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 ここまで
===================================*/

body {
margin: 0;
font-family: Arial, sans-serif;
  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;
  background-color: var(--header_bg);
  text-align: center;
  width: 100%;
  z-index: 999;
}

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


footer {
  background-color: var(--footer_bg);
  text-align: center;
  padding: 2em 0;
  justify-content: space-between;
}

#site-footer{
}

#site-footer > div{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}

#footer_logo{
	width:45px;
	margin-bottom:1em;
}
#footer_logo img{
	display:block;
	width:100%;
}

#footer_nav {
	width:100%;
}

#footer_nav a {
  color:  var(--footer_color1);
}
footer ul{
	list-style: none;
}
footer ul li {
	display:inline-block;
	margin-right:2em;
}
footer ul li:last-child{
	margin-right:0;
}
.footer_nav li span.menu-item-description {
  display: block;
  text-align: center;
  font-size: 0.8rem;
  line-height: 1.4;
  margin-top: 0.5em;
}

footer .footer_menu li a strong{
	display:none;
}
footer .sns_menu li a span{
	display:none;
}

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



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

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

.title span {
	color:#69AD50;
  	font-size: 0.5em;
  	display: block;
	line-height: 1;
}

.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;
}
/* 初期状態の設定 */
.content_wrap {
	opacity: 0;
	transform: translateY(50px); /* 初期位置を少し下に */
	visibility: hidden; /* 初期状態では見えないように */
	transition: opacity 1s ease, transform 0.6s ease, visibility 0s 1s; /* アニメーション */
}

/* visible クラスが追加された時に変更されるスタイル */
.content_wrap.visible {
	opacity: 1; /* 表示する */
	transform: translateY(0); /* 元の位置に戻す */
	visibility: visible; /* 画面内に表示する */
	transition: opacity 1s ease, transform 0.6s ease, visibility 0s 0s; /* スムーズなアニメーション */
}

.contents {
	max-width: 1260px;
	width: 100%;
	margin: 0 auto;
	padding:100px 80px;
}

.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: 150px;
}

.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;
	}
}



/* Nav items */
/* 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: 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 {
	padding: 15px 0;
	opacity: 0;
	transition: 0.5s;
}

.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: #000;
	background-color: #000;
}

.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: #fff;
	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: #fff;
	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 */

/* Navbar Container */
.navtext-container {
	width: 100%;
	height: 76px;
	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 {
	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{
	margin-bottom:2em;
}

#breadcrumb ul{
	list-style:none;
}

#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;
}



.titleh2{
	border-left:solid 3px #69AD50;
	line-height:1.2em;
	padding-left:0.8em;
}

.titleh3{
	border-bottom:solid 2px #5a4c37;
	line-height:1.2em;
}

.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;
	border-top:solid #D3D3D3 1px;
}

.news_list li{
	border-bottom:solid #D3D3D3 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;
	margin-left:1em;
	line-height:1.5;
	width:calc(100% - 143px);
}

.news_list li a > div p .date{
}
.cate_name{
	display:inline-block;
	border:solid 1px #5a4c37;
	padding:0 0.2em;
	margin-top:0.3em;
	font-size:0.8em;
}
.cate_date .cate_name{
	margin-right:1em;
}
.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;
	white-space:nowrap;
}
.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%;
}

@media only screen and (max-width: 767px){
	article.contents{
		padding-top:6em;
	}
	.navtext-container{
		height:60px;
	}
	#submenu{
		display:none;
	}
	
	.navtext-container{
		padding-left:0;
	}
	.logo{
		padding-left:0.2em;
	}
	.logo img{
		width:110px;
	}
	.menu-icon{
		padding: 29px 21px;
	}
	.navicon{
		width:18px;
	}
	.contents{
		padding:3em 1em;
	}
	.menu{
		margin-top:60px;
	}
	#breadcrumb{
		display:none;
	}
	footer ul li{
		display:block;
		margin-right:0;
		margin-bottom:1em;
	}
	footer ul li:last-child{
		margin-bottom:0;
	}
	
	.news_list li a{
		padding:1.5em 0;
	}
	
	.news_list li a > div > .arrow_date > span{
		display:none;
	}
	.news_list li a > div .post-thumbnail{
		width: 7em;
	}
	.news_list li a > div .post-thumbnail img{
		display:block;
		width:100%;
		height:auto;
	}
	.news_list li a > div p{
		width: calc(100% - 44px);
		padding-right:1em;
	}
	.news_list li a > div p .date{
		font-size:0.8em;
		display:inline-block;
		margin-left:1em;
	}
}


#category_wrap{
	margin-top:5em;
}

#category_wrap ul{
	list-style:none;
	border-top: solid #D3D3D3 1px;
}
#category_wrap ul li{
	border-bottom: solid #D3D3D3 1px;
}
#category_wrap ul li a{
	display:block;
	padding:0.5em 0;
}


.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;
}

#free_cont{
	line-height:1.8;
}
#free_cont a{
	text-decoration:underline!important;
}

#free_cont p,
#free_cont ul{
	margin-bottom:1em;
}

#free_cont li{
	margin-left:1em;
}

#copyright{
	text-align:center;
	font-size:0.8em;
	padding-top:2em;
	color:#fff;
}