@charset "utf-8";
/* CSS Document */

/* --- 設定用CSS　---*/

body,input,textarea,button,.button,.faux-button,.wp-block-button__link,.wp-block-file__button,.has-drop-cap:not(:focus)::first-letter,.has-drop-cap:not(:focus)::first-letter,.entry-content .wp-block-archives,.entry-content .wp-block-categories,.entry-content .wp-block-cover-image,.entry-content .wp-block-latest-comments,.entry-content .wp-block-latest-posts,.entry-content .wp-block-pullquote,.entry-content .wp-block-quote.is-large,.entry-content .wp-block-quote.is-style-large,.entry-content .wp-block-archives *,.entry-content .wp-block-categories *,.entry-content .wp-block-latest-posts *,.entry-content .wp-block-latest-comments *,.entry-content p,.entry-content ol,.entry-content ul,.entry-content dl,.entry-content dt,.entry-content cite,.entry-content figcaption,.entry-content .wp-caption-text,.comment-content p,.comment-content ol,.comment-content ul,.comment-content dl,.comment-content dt,.comment-content cite,.comment-content figcaption,.comment-content .wp-caption-text,.widget_text p,.widget_text ol,.widget_text ul,.widget_text dl,.widget_text dt,.widget-content .rssSummary,.widget-content cite,.widget-content figcaption,.widget-content .wp-caption-text {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	font-size:16px;
	letter-spacing:0;

}
@media screen and (max-width:599px) {
body,input,textarea,button,.button,.faux-button,.wp-block-button__link,.wp-block-file__button,.has-drop-cap:not(:focus)::first-letter,.has-drop-cap:not(:focus)::first-letter,.entry-content .wp-block-archives,.entry-content .wp-block-categories,.entry-content .wp-block-cover-image,.entry-content .wp-block-latest-comments,.entry-content .wp-block-latest-posts,.entry-content .wp-block-pullquote,.entry-content .wp-block-quote.is-large,.entry-content .wp-block-quote.is-style-large,.entry-content .wp-block-archives *,.entry-content .wp-block-categories *,.entry-content .wp-block-latest-posts *,.entry-content .wp-block-latest-comments *,.entry-content p,.entry-content ol,.entry-content ul,.entry-content dl,.entry-content dt,.entry-content cite,.entry-content figcaption,.entry-content .wp-caption-text,.comment-content p,.comment-content ol,.comment-content ul,.comment-content dl,.comment-content dt,.comment-content cite,.comment-content figcaption,.comment-content .wp-caption-text,.widget_text p,.widget_text ol,.widget_text ul,.widget_text dl,.widget_text dt,.widget-content .rssSummary,.widget-content cite,.widget-content figcaption,.widget-content .wp-caption-text {
	font-size:15px;
}	
}

section h2,
.slider-item01 p,
.slider-item01 h2 {
	font-family: "Nanum Gothic", sans-serif;
	font-weight:700;
	letter-spacing:2px;
}
section h2 {
	font-size:250%;
	color:#9ACD32;
	line-height:1;
	letter-spacing:2px;
	border-bottom: 2px solid;
    border-image: linear-gradient(to right, #9ACD32 0%, rgba(154,204,50,0) 50%);
    border-image-slice: 1;
}
.slider-item01 p,
.slider-item01 h2 {
	
}


.widgettitle {
	border-bottom:1px solid #604b44;
}
.header-titles-wrapper{
	padding:0;
}

@media screen and (max-width:599px) {
.home-content figure img {
	width:80%;
}
#site-header {
	background:none;
}
}

#site-footer {
	background:#9ACD32;
	color:white;
}
nav{
	font-family: "Nanum Gothic", sans-serif;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}
.twitter img {
	filter: drop-shadow(2px 2px 4px rgba(0,0,0,0.3));	
}


nav a {
	color:white;	
}

section#menu h3,
section#about h3 span,
section#about h3.en,
section#about h4 span,
section#about h4.en,
section#service h3 span{
	font-family: "Nanum Gothic", sans-serif;
	letter-spacing:0;
}
section#under_block h3 {

}

/* ボタン01 開閉ボタン　上へ戻るボタン　下層ページ表題*/

p.btn01 a, 
#menu_btn a,
#page-top a:before,
#jp_button span,
#en_button span,
#more_button span{
box-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

p.btn01 a, 
#menu_btn a,
#page-top a:before,
section#menu h3,
section#under_block h3,
#jp_button span,
#en_button span,
#more_button span,
.works_modal li.button,
button.close-button{
background: linear-gradient(to bottom,  #9acd32,#75a310); 
}

button.close-button {
	text-decoration:none;
}


section#menu h4{
	color:#59493f;
}
a{
	color:orange;
	text-decoration:none;
} 
a:hover{
	text-decoration:underline;
} 

/*-- word style --*/

section#style,
section#about,
section#service{
	background:#F3FFD8;
}

@media all and (max-width: 599px) {
section#style.under,
section#about,
section#service{
	padding-top:50px;
}
}

section#style ul {
	margin-top:30px;
}

section#style a,
section#about a,
section#service a{
	 color:#9ACD32;
	font-size:small;
	line-height:1.3;
}
section#style li {
	background:none;
	line-height:1.3;
}
section#style ul.roll li{
	position:relative;
	margin-bottom:0;
	margin-bottom:20px;
}
section#style ul.roll li .imgWrap{
	background:#d6e9ac;
}
section#style ul.roll li a{
	transition:all 0.3s;
}
section#style ul.normal div.imgWrap {
	margin-bottom:7px;
}

section#style ul.roll li a.link_text {
	position:absolute;
	top:0;
	left:0;
	z-index:99;
	color:white;
	background:rgba(0,0,0,0.6);
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
	text-align:center;
	height:100%;
	opacity:0;
	text-decoration:none;


}
section#style ul.roll li:hover a.link_text {
	opacity:1;
}


@media all and (max-width: 599px) {	
	section#style ul p.sp {
	 color:#9ACD32;
	font-size:small;
	line-height:1.3;	
		padding-top:5px;
		margin:0;
	}	
	
}


/*-- about --*/

section#about #about_name{
	display:flex;
	justify-content:space-between;
	align-items:center;
}
section#about #about_name div:last-child {
	display:flex;
	align-items:center;
}
section#about #about_name div:last-child p {
	margin-bottom:0;
	margin-right:15px;
}
section#about #about_name div:last-child a {
	font-size:110%;
}
section#about #about_name img {
	max-width:40px;
}
section#about .en {
	display:none;
}
section#about h3,
section#about h4,
section#service h3,
section#service h4{
	font-weight:normal;
}

section#about h3,
section#service h3{
	font-size:250%;
	margin-bottom:0;
}
section#about h3 span,
section#service h3 span{
	font-size:50%;
	margin-left:20px;
}
section#about h4 {
	margin-top:15px;
	font-size:110%;
}
section#about h4 span {
	margin-left:15px;
}
section#about .text {
	padding-top:30px;
}

section#about #about_scarlet{
	display:flex;
	align-items:center;
	margin-top:30px;
}
section#about #about_scarlet img  {
	max-width:200px;
	margin-right:20px;
}

#jp_button,
#en_button {
	display:inline;
}
#jp_button span,
#en_button span,
#more_button span{
	display:inline-block;
	color:white;
	padding:10px 20px;
	cursor:pointer;
}
#jp_button span:hover,
#en_button span:hover,
#more_button span:hover,
.works_modal li.button:hover,
button.close-button:hover{
	opacity:0.8;
}


@media all and (max-width: 599px) {	
section#about #about_name{
	display:block;
}	
section#about #about_name div:last-child {
	margin-bottom:20px;
}	
	
}

/*-- works --*/

#more_button {
	margin-top:30px;
	text-align:center;
}
#more_button span {
	font-size:120% !important;
	padding:15px 30px;
}

/*-- service --*/

section#service h3 {
	color:#9ACD32;
	margin-top:0;
	margin-bottom:0;
	display:inline-block;
	white-space:nowrap;
}
section#service h4 {
	margin-top:10px;
	font-size:130%;
	color:#444;
	display:inline-block;
}

section#service .service_title,
section#service .service_title02{
	position:relative;
	padding-bottom:50px;
}
section#service .service_title > img {
	width:90%;
}
section#service .service_title > div {
	position:absolute;
	padding:15px 25px;
	right:0;
	bottom:0;
	background:#F3FFD8;
}
section#service .service_title02 {
	margin-top:50px;
}
section#service .service_title02  > img  {
	margin-right:0;
	margin-left:auto;
}
section#service .service_title02 > div {
	position:absolute;
	padding:15px 25px;
	left:0;
	bottom:0;
	max-width:50%;
}


@media all and (max-width: 599px) {	
section#service .service_title > img {
	width:100%;
}
section#service .service_title,
section#service .service_title02{
	padding-bottom:10px;
}
section#service .service_title > div,
section#service .service_title02 > div{
	position:relative;
	max-width:100%;
	padding: 0;
}

}



/*-- contact --*/

section#contact{
	background:white;
}

section#contact div.text {
	margin:50px auto 40px auto;
	padding-bottom:20px;
	border-bottom:1px dotted #9ACD32;
	max-width:600px;
}
section#contact p.note{
	font-size:80%;
}

/*=================================
スライダー
===================================*/
.slider {
    position:relative;
  z-index: 1;
  /*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
  height: 100vh;/*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
}
/*　背景画像設定　*/

.slider-item01 {
  background:url(/wp/wp-content/uploads/2024/05/top_back02.jpg);
}
.slider-item01 p {
	text-align:left;
	width:70%;
	margin:0;
}
.slider-item01 h2 {
	text-align:left;
	width:70%;
	margin:10px 0 0 0;
}
.slider-item02 {
    background:url(/wp/wp-content/uploads/2024/05/top_back01.jpg);
}
.slider-item03 {
    background:url(/wp/wp-content/uploads/2024/06/top_back01.jpg);
}

.slider-item02 img,
.slider-item03 img {
	margin:0 auto;
	max-width:480px;
	width:70%;
}
.slider-item01 h2 {
	font-weight:800 !important;
}

@media screen and (max-width:998px) {
.slider-item01 {
    background:url(/wp/wp-content/uploads/2024/06/top_back02_sp.jpg);
	background-position:right center !important;
}
.slider-item01 p {
	text-align:left;
	width:90%;
	margin:0;
}
.slider-item01 h2 {
	text-align:left;
	width:90%;
	margin:10px 0 0 0;
}
}
@media screen and (max-width:599px) {
.slider-item01 {
    background:url(/wp/wp-content/uploads/2024/06/top_back02_sp.jpg);
	background-position:right center !important;
}

}



.slider-item {
    width: 100%;/*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
    height:100vh;/*各スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
    background-repeat: no-repeat;/*背景画像をリピートしない*/
    background-position: center;/*背景画像の位置を中央に*/
    background-size: cover;/*背景画像が.slider-item全体を覆い表示*/
}
.slider-item > div {
    width: 100%;/*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
    height:100vh;/*各スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
	display:flex;
	justify-content:center;
	align-items:center;
	flex-wrap:wrap;
	flex-direction: column; 
}



/*矢印の設定*/
.slick-prev, 
.slick-next {
    position: absolute;
  z-index: 3;
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #fff;/*矢印の色*/
    border-right: 2px solid #fff;/*矢印の色*/
    height: 25px;
    width: 25px;
}
.slick-prev {/*戻る矢印の位置と形状*/
    left:2.5%;
    transform: rotate(-135deg);
}
.slick-next {/*次へ矢印の位置と形状*/
    right:2.5%;
    transform: rotate(45deg);
}

*,
.close-button {
    text-transform: none !important;
}
