/*
Theme Name:Marikoピアノ教室
Theme URI:
Version:1.0.0
Description:Marikoピアノ教室
Author:ARCKLY
Author URI: http://arckly.com/
*/

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


/* Reset
------------------------------------------------------------*/
*,::before,::after{box-sizing:border-box;border-style:solid;border-width:0;min-width:0}html{line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0}main{display:block}p,table,blockquote,address,pre,iframe,form,figure,dl{margin:0}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}ul,ol{margin:0;padding:0;list-style:none}dt{font-weight:700}dd{margin-left:0}hr{box-sizing:content-box;height:0;overflow:visible;border-top-width:1px;margin:0;clear:both;color:inherit}pre{font-family:monospace,monospace;font-size:inherit}address{font-style:inherit}a{background-color:transparent;text-decoration:none;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:inherit}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}svg,img,embed,object,iframe{vertical-align:bottom}button,input,optgroup,select,textarea{-webkit-appearance:none;appearance:none;vertical-align:middle;color:inherit;font:inherit;background:transparent;padding:0;margin:0;border-radius:0;text-align:inherit;text-transform:inherit}button,[type="button"],[type="reset"],[type="submit"]{cursor:pointer}button:disabled,[type="button"]:disabled,[type="reset"]:disabled,[type="submit"]:disabled{cursor:default}:-moz-focusring{outline:auto}select:disabled{opacity:inherit}option{padding:0}fieldset{margin:0;padding:0;min-width:0}legend{padding:0}progress{vertical-align:baseline}textarea{overflow:auto}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type="number"]{-moz-appearance:textfield}label[for]{cursor:pointer}details{display:block}summary{display:list-item}[contenteditable]:focus{outline:auto}table{border-color:inherit;border-collapse:collapse}caption{text-align:left}td,th{vertical-align:top;padding:0}th{vertical-align:top;padding:0;text-align:left;font-weight:normal}

input[type="radio"] {
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #088FDB;
  content: '';
}
input[type="checkbox"] {
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid #000;
  vertical-align: -1px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type="checkbox"]:checked:before {
  position: absolute;
  top: -5px;
  left: 4px;
  transform: rotate(50deg);
  width: 10px;
  height: 16px;
  border-right: 4px solid #088FDB;
  border-bottom: 2px solid #088FDB;
  content: '';
}

a:hover.link img{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	display: inline-block;
	transition:all 0.5s;
}

img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	vertical-align:middle;
	image-rendering: -webkit-optimize-contrast;
}


/*===============================================
●フォント読み込み
===============================================*/
.font_mincho{
	font-family:"游明朝体", "Yu Mincho", YuMincho, "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

.noto-sans-jp-medium {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
.noto-sans-jp-Semibold {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}
.noto-sans-jp-bold {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}
.belleza-regular {
  font-family: "Belleza", sans-serif;
  font-weight: 400;
  font-style: normal;
}




/* 共通CSS
------------------------------------------------------------*/
body{
	font-family:  "Noto Sans JP","メイリオ","游ゴシック体", Yu Gothic, YuGothic, "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic ProN, Hiragino Sans, "ヒラギノ角ゴシック",  sans-serif;
	color: #333333;
	font-size: 16px;
	background-color:#fff;
	line-height: 1.7em;
	font-weight: 400;
}

body a{
	color:#333333;
	text-decoration:underline;
} 

body a:hover{
	opacity: 0.7;
	text-decoration:underline;
	transition:all 0.5s;
}


.float_l{
	float:left;
}

.float_r{
	float:right;
}

.clear{
	clear:both;
}

.red{
	color:#F00;
}

.blue{
	color:#00F;
}

.bold{
	font-weight: 700;
}



/*===============================================
●フォーム系
===============================================*/
/*===============================================
●iOS submitリセット
===============================================*/

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


/*フォーム系*/
.contact_btn{
	text-align:center;
}

.contact_btn input{
	padding:20px 50px;
	background-color:#E469A3;
	border:none;
	color:#fff;
	text-align:center;
	margin:10px 0;
}
.contact_btn input:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

.contact_main{
	margin-bottom:10px;
}


.info_box5 input[type="text"]{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}

.info_box5 input[type="text"].form_short{
	width:50px;
	background-color: #fff;
	border: 1px solid #111;
}
.info_box5 input[type="text"]#your-zip{
	width:50px;
	background-color: #fff;
	border: 1px solid #111;
}
.info_box5 input[type="text"].form_seinengappi1{
	width:80px;
	background-color: #fff;
	border: 1px solid #111;
	margin:0 10px;
}
.info_box5 input[type="text"].form_seinengappi2{
	width:50px;
	background-color: #fff;
	border: 1px solid #111;
	margin:0 10px;
}
.info_box5 input[type="email"]{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}


.info_box5 input[type="tel"]{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}

.info_box5 input[type="url"]{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}

.info_box5 textarea{
	width:90%;
	background-color: #fff;
	border: 1px solid #111;
}

.zip_box input[type="text"]{
	width:100px;
	background-color: #fff;
	border: 1px solid #111;
}


.hissu{
	background-color:#B20000;
	color:#FFF;
	font-size:12px;
	padding:2px 5px;
	margin-right:20px;
}

.nini{
	background-color:#888888;
	color:#FFF;
	font-size:12px;
	padding:2px 5px;
	margin-right:20px;
}

.info_chui{
	color:#B20000;
	display: block;
}

/*===============================================
●ページャー
===============================================*/

.pagination {
clear:both;
padding:20px 0;
position:relative;
font-size:11px;
line-height:13px;
}
 
.pagination span, .pagination a {
display:block;
float:left;
margin: 2px 2px 2px 0;
padding:6px 9px 5px 9px;
text-decoration:none;
width:auto;
color:#fff;
background: #E469A3;
	border: 1px solid #E469A3;
}
 
.pagination a:hover{
	background-color:#65C5C0;
	color:#FFF;
border: 1px solid #65C5C0;
}
 
.pagination .current{
	padding:6px 9px 5px 9px;
	background-color:#65C5C0;
	color:#FFF;
border: 1px solid #65C5C0;
}

/*===============================================
●マージンボトム設定
===============================================*/

.mb0{
	margin-bottom:0px!important;
}
.mb5{
	margin-bottom:5px!important;
}
.mb10{
	margin-bottom:10px!important;
}
.mb15{
	margin-bottom:15px!important;
}
.mb20{
	margin-bottom:20px!important;
}
.mb25{
	margin-bottom:25px!important;
}
.mb30{
	margin-bottom:30px!important;
}
.mb35{
	margin-bottom:35px!important;
}
.mb40{
	margin-bottom:40px!important;
}
.mb45{
	margin-bottom:45px!important;
}
.mb50{
	margin-bottom:50px!important;
}
.mb55{
	margin-bottom:55px!important;
}
.mb60{
	margin-bottom:60px!important;
}
.mb65{
	margin-bottom:65px!important;
}
.mb70{
	margin-bottom:70px!important;
}
.mb75{
	margin-bottom:75px!important;
}
.mb80{
	margin-bottom:80px!important;
}
.mb85{
	margin-bottom:85px!important;
}
.mb90{
	margin-bottom:90px!important;
}
.mb95{
	margin-bottom:95px!important;
}
.mb100{
	margin-bottom:100px!important;
}
.mb150{
	margin-bottom:150px!important;
}
.mb200{
	margin-bottom:200px!important;
}


/*===============================================
●Googleマップ
===============================================*/

.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/*===============================================
●ページトップ
===============================================*/

#PageTopBtn{
  position: fixed;
  right: 0px;
  bottom: 40px;
  z-index:100;
	width: 123px;
	cursor: pointer;
}
#PageTopBtn:hover{
  bottom: 40px;
	transition:all 0.5s;
}
#PageTopBtn img{
	width: 123px;
}

/*===============================================
●フォントサイズ・カラー設定
===============================================*/
.font_10px{
	font-size: 10px;
	line-height:1.7em;
}
.font_11px{
	font-size: 11px;
	line-height:1.7em;
}
.font_12px{
	font-size: 12px;
	line-height:1.7em;
}
.font_13px{
	font-size: 13px;
	line-height:1.7em;
}
.font_14px{
	font-size: 14px;
	line-height:1.7em;
}
.font_15px{
	font-size: 15px;
	line-height:1.7em;
}
.font_16px{
	font-size: 16px;
	line-height:1.7em;
}
.font_17px{
	font-size: 17px;
	line-height:1.7em;
}
.font_18px{
	font-size: 18px;
	line-height:1.7em;
}
.font_20px{
	font-size: 20px;
	line-height:1.7em;
}
.font_22px{
	font-size: 22px;
	line-height:1.7em;
}
.font_24px{
	font-size: 22px;
	line-height:1.7em;
}
.font_26px{
	font-size: 26px;
	line-height:1.7em;
}
.font_27px{
	font-size: 27px;
	line-height:1.7em;
}
.font_28px{
	font-size: 28px;
	line-height:1.7em;
}
.font_33px{
	font-size: 33px;
	line-height:1.7em;
}
.font_34px{
	font-size: 34px;
	line-height:1.7em;
}
.font_30px{
	font-size: 30px;
	line-height: 1.4em;
}
.font_32px{
	font-size: 32px;
	line-height:1.7em;
}
.font_36px{
	font-size: 36px;
	line-height:1.7em;
}
.font_38px{
	font-size: 38px;
	line-height:1.7em;
}
.font_40px{
	font-size: 40px;
	line-height:1.7em;
}
.font_42px{
	font-size: 42px;
	line-height:1.7em;
}
.font_48px{
	font-size: 48px;
	line-height:1.7em;
}
.font_50px{
	font-size: 50px;
	line-height:1.7em;
}
.font_52px{
	font-size: 52px;
	line-height:1.7em;
}
.font_56px{
	font-size: 56px;
	line-height:1.7em;
}
.font_58px{
	font-size: 58px;
	line-height:1.7em;
}
.font_60px{
	font-size: 60px;
	line-height:1.7em;
}
.font_64px{
	font-size: 64px;
	line-height:1.7em;
}
.font_70px{
	font-size: 70px;
	line-height:1.7em;
}
.font_80px{
	font-size: 80px;
	line-height:1.7em;
}
.font_100px{
	font-size: 100px;
	line-height:1.7em;
}
.color_wh{
	color: #FFF;
}
.color_k{
	color: #000;
}
.color_yellow{
	color: #FFC822;
}
.color_brown{
	color: #9b7f53;
}
.color_red{
	color: #bf0e05;
}
.color_green{
	color: #58c0bb;
}
.color_green2{
	color: #87A298;
}
.color_orange{
	color: #ee5820;
}
.color_blue{
	color: #1286ff;
}
.color_yellow{
	color: #ffd45f;
}
.color_gray{
	color: #777;
}
.color_pink{
	color: #e46aa3;
}
.color_pink2{
	color: #f5cadf;
}
.font_shadow1{
text-shadow:1px 1px 0 #333,-1px 1px 0 #333,1px -1px 0 #333,-1px -1px 0 #333;
}
.font_italic{
	font-style: italic;
}
.txt_shadow_red{
	color:transparent;
	-webkit-text-stroke: 1px rgb(210, 45, 42);
}
.txt_shadow1{
	text-shadow: 1px 1px 7px #333;
}

/*===============================================
●ボタン
===============================================*/

a.bt01{
	text-decoration: none;
	display: block;
	width: 280px;
	height: 60px;
	line-height: 50px;
	color: #fff;
	background-color:#E469A2;
	position: relative;
	text-align: center;
	vertical-align: middle;
	font-size: 16px;
	border: 5px double #fff;
	border-radius: 10px;
	background-image: url("images/ico_arrow01.png");
	background-repeat: no-repeat;
	background-size: 19px auto;
	background-position: right 20px center;
}
a:hover.bt01{
	text-decoration: none;
}
/*
a.bt01::before{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	right: 20px;
	width: 20px;
	height: 2px;
	display: block;
	background-color: #fff;
}
*/
/*
a.bt01::after{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	right: 20px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
*/
a.bt02{
	text-decoration: none;
	display: block;
	width: 280px;
	height: 60px;
	line-height: 50px;
	color: #fff;
	background-color:#58C0BB;
	position: relative;
	text-align: center;
	vertical-align: middle;
	font-size: 16px;
	border: 5px double #fff;
	border-radius: 10px;
	background-image: url("images/ico_arrow01.png");
	background-repeat: no-repeat;
	background-size: 19px auto;
	background-position: right 20px center;
}
a:hover.bt02{
	text-decoration: none;
}
/*
a.bt02::after{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	right: 20px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
*/
a.bt01_r{
	margin-left: auto;
}
a.bt01_c{
	margin-left: auto;
	margin-right: auto;
}

/*===============================================
●画面の横幅が768px以上
===============================================*/
@media screen and (min-width: 768px){

body{
	line-height:1.7em;
}

.pc_none{
	display:none;
}

.pc_float_l{
	float:left;
}

.pc_float_r{
	float:right;
}

.pc_center{
	text-align:center;
}

.pc_right{
	text-align:right;
}

	.d_flex_pc{
		display: flex;
	}
	.flex_wrap_pc{
		flex-wrap: wrap;
	}
	.j_content_c_pc{
		justify-content: center;
	}
	.j_content_en_pc{
		justify-content: flex-end;
	}
	.j_content_sb_pc{
		justify-content: space-between;
	}
	.a_items_c_pc{
		align-items: center;
	}
	.a_items_en_pc{
		align-items: flex-end;
	}
	.f-direction_re_pc{
		flex-direction: row-reverse;
	}

a.link_disabled_pc{
	pointer-events: none;
}

/*wrap設定
------------------------------------------------------------*/

#wrapper{
/*
	min-width:1200px;
	margin-left:auto;
	margin-right:auto;
*/
}

.wrap{
	max-width:1240px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
.wrap800{
	max-width:840px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
.wrap1100{
	max-width:1140px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
.wrap1200{
	max-width:1240px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
.wrap1400{
	max-width:1440px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
.wrap1500{
	max-width:1540px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
.wrap1600{
	max-width:1640px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
	.next_mv{
		background-color:#65C5C0;
	}
	.path{
		text-align: right;
	}
	.path a{
		text-decoration: none;
	}
	.path a:hover{
		text-decoration: none;
	}
	.next_title h1{
		width: 320px;
	}
	.next_title div{
		width: calc(50% - 160px);
	}
	
	.mainbgarea{
		background-image: url("images/body_bg.png");
		background-repeat: no-repeat;
		background-size: 1039px auto;
		background-position: right 50px top 200px;
	}
	

	/*フッター設定
------------------------------------------------------------*/
	.footer_bnr{
		padding-top: 100px;
		padding-bottom: 100px;
	}
	.footer_bnr_box{
		gap:30px;
	}
	.footer_main{
		background-color: #FDF3F7;
		border-top: 3px double #E468A2;
		padding: 80px 0;
	}
	.footer_sns{
		gap:20px;
	}
	.footer_logo{
		width: 350px;
		margin-left: auto;
		margin-right: auto;
	}
	
	.footer_map{
		padding-bottom: 450px;
	}
	.footer_copyright_area{
		padding: 20px 0 20px;
		background-color: #E468A2;
	}
	.footer_copyright_wrap{
		text-align: center;
	}
	.footer_copyright_wrap small{
		font-size: 16px;
/*		font-weight: bold;*/
		color: #fff;
	}
	
	
	/* ホーム設定
------------------------------------------------------------*/
	
	.top_mv img{
		width: 100%;
	}
	.top_area1{
		padding-top: 100px;
	}
	.top_area1_l{
		width: 47.8%;
	}
	.top_area1_r{
		width: 46.8%;
	}
	.top_area1_bt{
		gap:20px;
	}
	.top_area2{
		background-color: #FDF3F8;
		padding: 80px 0;
	}
	.top_area2_title{
		background-image: url("images/top_txt01.png");
		height: 40px;
		background-repeat: no-repeat;
		background-position: center top;
	}
	.top_h2_1{
		color: #888887;
	}
	.topa_area2_box1{
		gap:20px;
	}
	.top_area3{
		background-image: url("images/top_bg01.png");
		height: 750px;
		background-size: 1920px auto;
		background-repeat: repeat-x;
		background-position: center top;
		padding-top: 150px;
	}
	.top_area3_innner{
		background-color: rgba(255,255,255,0.90);
		padding: 5px;
		border-radius: 10px;
	}
	.top_area3_innner{
		background-color: rgba(255,255,255,0.90);
		padding: 5px;
		border-radius: 10px;
	}
	.top_area3_innner2{
		border: 1px solid #DED3C6;
		border-radius: 10px;
		padding: 80px 0;
	}
	.top_news_l{
		width: 300px;
	}
	.top_news_r{
		width: calc(100% - 300px);
	}
	.top_news_r_box{
		height: 280px;
		overflow-y: scroll;
	}
	.top_news_r_box ul{
		border-top: 1px solid #CCC;
		border-bottom: 1px solid #CCC;
	}
	.top_news_r_box ul li{
		border-bottom: 1px solid #CCC;
		padding: 20px 40px;
		display: flex;
	}
	.top_news_r_box ul li div:nth-child(1){
		width: 130px;
	}
	.top_news_r_box ul li div:nth-child(2){
		width: calc(100% - 130px);
	}
	.top_news_r_box ul li div a{
		text-decoration: none;
	}


/* 問い合わせ 設定
------------------------------------------------------------*/
	
.info_box5{
	display:flex;
	justify-content: space-between;
	margin-bottom:10px;
}

.info_box5 div:nth-child(1){
	width:30%;
}
.info_box5 div:nth-child(2){
	width:70%;
}
/* 下層 設定
------------------------------------------------------------*/
	
	.next2_box1_l{
		width: 60%;
		padding-top: 20px;
	}
	.next2_box1_r{
		width: 36.6%;
	}
	
	.next3_box1{
		gap:30px;
	}
	.next3_box2{
		display: flex;
		justify-content: center;
		align-items: center;
		height: 240px;
		width: 100%;
		border: 10px solid #E469A2;
		background-color: #fff;
	}
	.next_h2_1{
		border-bottom: 1px solid #BCAF93;
		background-image: url("images/title_ico01.png");
		background-repeat: no-repeat;
		background-size: 40px auto;
		min-height: 50px;
		padding-left: 60px;
	}
	
	.next4_table1{
		width: 100%;
		border-bottom: 1px solid #BDB092;
		border-right: 1px solid #BDB092;
		text-align: center;
	}
	.next4_table1 thead th{;
		background-color: #F1EEE9
	}
	.next4_table1 th{
		width: 33.33%;
		border-top: 1px solid #BDB092;
		border-left: 1px solid #BDB092;
		padding: 10px;
		text-align: center;
	}
	.next4_table1 td{
		width: 33.33%;
		border-top: 1px solid #BDB092;
		border-left: 1px solid #BDB092;
		padding: 10px;
		text-align: center;
	}
	.next4_ul li{
		list-style-type: disc;
		margin-left: 1em;
	}

	.next7_table{
		width: 100%;
		border-bottom: 1px solid #BDB092;
		border-right: 1px solid #BDB092;
	}
	.next7_table th{
		width: 20%;
		border-top: 1px solid #BDB092;
		border-left: 1px solid #BDB092;
		padding: 10px 20px;
		background-color: #F1EEE9
	}
	.next7_table td{
		width: 80%;
		border-top: 1px solid #BDB092;
		border-left: 1px solid #BDB092;
		padding: 10px 20px;
	}
	.next8_box1_l{
		width: 60%;
	}
	.next8_box1_r{
		width: 36.6%;
	}
	.next7_col_img img{
		width: 100%;
		aspect-ratio: 340 / 255;
		object-fit: cover;
	}
	.contact_box1{
		background-color:#E469A3;
		color: #fff;
		padding: 40px;
	}

}

/*===============================================
●画面の横幅が1450px以上
===============================================*/
@media screen and (min-width:1450px){
	
/*ヘッダー設定
------------------------------------------------------------*/
	.main_header{
		width: 100%;
	}
	.main_header_inner{
		margin-left: 3%;
		margin-right: 0%;
		padding-right: 150px;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.header_logo{
		width: 385px;
		z-index:3;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.main_header_r{
		width:calc(100% - 385px);
		margin-left:auto;
		box-sizing:border-box;
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
	.header_sp_contact{
		display: none;
	}
	.header_sns{
		margin-left: 20px;
	}
	.header_sns ul{
		display: flex;
		gap:10px;
	}
	.header_sns ul li{
		display: block;
		width: 35px;
	}
	a.header_contact{
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #E36AA2;
		width: 170px;
		height: 170px;
		border-radius: 0 0 0 10px;
		position: absolute;
		right: 0;
		top:0;
		text-decoration: none;
		text-align: center;
	}
	a:hover.header_contact{
		text-decoration: none;
	}
	.header_contact_img{
		width: 30px;
		margin: 0 auto 10px;
	}
	.main_nav{
		width: 100%;
		padding: 0;
		margin: 0;
	}
	#nav_wrap{
		width: 100%;
		padding: 0;
			margin: 0;
}
ul#menu{
	display: flex;
	justify-content:flex-end;
		padding: 0;
		margin-left: auto;
	margin-right: 0;
	gap:20px;
}

ul#menu li{
	position:relative;
	text-align: center;
	display: block;
	height: 40px;
/*	width:90px;*/
	box-sizing: inherit;
	}
ul#menu li:last-child{
	background-image: none;
	padding-right: 0;
	}
/*
ul#menu li:nth-child(2){
	width: 125px;
}
ul#menu li:nth-child(3){
	width: 240px;
}
ul#menu li:nth-child(4){
	width: 150px;
}
ul#menu li:nth-child(5){
	width: 150px;
}
ul#menu li:nth-child(6){
	width: 100px;
}
ul#menu li:nth-child(7){
	width: 120px;
}
*/
ul#menu li a{
	text-decoration: none;
	box-sizing: border-box;
	height: 40px;
/*	width: 100%;*/
	opacity: 1;
	display: block;
	text-align:center;
	line-height:1.2em;
	position:relative;
}
ul#menu li a:hover{
	opacity: 1;
}
	
ul#menu li a:after{
	 position: absolute;
	 bottom: 0px;
	 left: 0;
	 content: '';
	 width: 100%;
	 height: 2px;
	 background-color:#E36AA2;
	 transform: scale(0, 1);
	 transform-origin: center top;
	 transition: transform .3s;
}
ul#menu li a:hover::after
{
 transform: scale(1, 1);
}
ul#menu ul{
	z-index:100;
	display:none;
	position:absolute;
	top:40px;
	left:50%;
	transform: translate(-50%, 0%);
}
	ul#menu ul li{
		height: 40px;
		border: none;
		background-image: none;
	}
ul#menu ul li a{
	display:block;
	text-decoration:none;
	padding:0px 5px;
	height:40px;
	line-height:40px;
	border-bottom:1px dashed #E36AA2;
    opacity: 0.9;
    filter: alpha(opacity=90);
    -ms-filter: "alpha( opacity=90 )";
	background-color:#fff;
	text-align:center;
	width:150px;
 transform-origin: center top;
	transition: transform .3s;
	position: relative;
	font-size: 14px;
	letter-spacing: -0.1em;
	box-sizing: border-box;
}
ul#menu ul li:last-child a{
/*border: none;*/
	}	
ul#menu ul li a::after{
	bottom: -1px;
	}
	
	.humnav{
		display: none;
	}
	
/*下層MV 設定
------------------------------------------------------------*/

/*ホーム 設定
------------------------------------------------------------*/

	
/*フッター設定
------------------------------------------------------------*/

	
	
}
	
/*===============================================
●画面の横幅が1400px以上
===============================================*/
@media screen and (min-width:1400px){	
	
}

/*===============================================
●画面の横幅が1449pxまで
===============================================*/
@media screen and (max-width:1449px){

	.main_header{
/*
		padding-top: 10px;
		padding-bottom: 10px;
		padding-right: 70px;
		z-index: 3;
		width: 100%;
*/
	}
	.main_header_inner{
/*
		width: 100%;
		margin-left: auto;
		margin-right: auto;
*/
	}
	.header_logo{
		width: 350px;
/*		margin-top: 7px;*/
		padding: 10px 0 20px 3%
	}
	.header_sns{
		position: fixed;
		top:2vw;
		right:calc(3% + 60px);
		z-index: 999;
	}
	.header_sns ul{
		display: flex;
		gap:10px;
		justify-content: flex-end;
		align-items: center;
	}
	.header_sns ul li{
		display: block;
		width: 35px;
	}
	.header_sp_contact a{
		display: flex;
		justify-content: center;
		align-items: center;
		background-color:#E36AA2;
		width: 40px;
		height: 40px;
		border-radius: 0px;
		padding: 0 8px;
	}
	a.header_contact{
		display: none;
	}
	.main_nav{
		display: none;
	}	
	
	
nav.humnav{
	z-index:1000;
}

#humberger{
	position: fixed;
	top:2vw;
	right:3%;
	z-index: 999;
	width:40px;
	height:40px;
	box-sizing:border-box;
	padding:13px 10px 10px;
	cursor:pointer;
	background-color:#E36AA2;
}
.iconBar{
	height: 2px;
	background: #FFF;
	display: block;
	margin-bottom: 3px;
	-webkit-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */

	-webkit-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
	z-index:1000;
}

dl.accordion_spnav dt.open3 #humberger .iconBar{
	background: #FFF;
	box-shadow:none;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(1){
	transform:translate(0,8px) rotate(45deg);
	-webkit-transform:translate(0,8px) rotate(45deg);
	margin-bottom:8px;
	margin-top:-2px;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(2){
	transform:translate(-20px ,0);
	-webkit-transform:translate(-20px ,0);
	opacity:0;
}
dl.accordion_spnav dt.open3 #humberger :nth-child(3){
	transform:translate(0,-8px) rotate(-45deg);
	-webkit-transform:translate(0,-8px) rotate(-45deg);
}

.accordion_spnav dd{
	display:none;
	color:#FFF;
	position:fixed;
	top:0px;
	left:0px;
	background-color:#fff;
	width:100%;
	opacity: 0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
	z-index:997;
	padding-top:70px;
	height:100%;
	-webkit-overflow-scrolling: touch;
	overflow-y: auto;
	box-sizing:border-box;
}

.accordion_spnav dd a{
	display:block;
	color:#111;
	text-decoration:none;
	border-bottom:1px solid #111;
	padding:10px 5px 10px;
	font-size:18px;
}


.accordion_spnav dd a.nav_wrap_sp_home{
	border-top:1px solid #111;
}

.accordion_spnav2 div{
	display:block;
	color:#111;
	text-decoration:none;
	border-bottom:1px solid #111;
	padding:10px 40px 10px 5px;
	font-size:18px;
	position:relative;
}

.accordion_spnav2 ul{
	display:none;
}

.accordion_spnav2 ul li{
	background-color:#E36AA2;
}

.accordion_spnav2 ul li a{
	padding-left:2em;
	color:#fff;
}

.humberger2{
	width:20px;
	position:absolute;
	right:10px;
	top:15px;
	z-index:1000;
}

.iconBar2{
	height: 3px;
	background: #1b1b1b;
	display: block;
	margin-bottom: 4px;
	-webkit-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition: all 400ms cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */

	-webkit-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
	   -moz-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
		 -o-transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); 
			transition-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); /* easeInOutExpo */
}

.iconBar2:nth-child(1){
	transform:translate(0,8px) rotate(90deg);
	-webkit-transform:translate(0,8px) rotate(90deg);
}

div.accordion_spnav2 div.open2 span.iconBar2:nth-child(1){
	transform:translate(-20px ,0);
	-webkit-transform:translate(-20px ,0);
	opacity:0;
}
	

	
	/*ホーム設定
------------------------------------------------------------*/


/*フッター設定
------------------------------------------------------------*/

	
/*下層 設定
------------------------------------------------------------*/
	
	}

/*===============================================
●画面の横幅が767pxまで
===============================================*/
@media screen and (max-width:767px){

body{
}

.body_fixed{
  position: fixed;
  width:100%;
}
	
.sp_none{
	display:none;
}

.sp_center{
	text-align:center;
}

.sp_left{
	text-align:left;
}

.sp_right{
	text-align:right;
}

.sp_float_l{
	float:left;
}

.sp_float_r{
	float:right;
}


	.d_flex_sp{
		display: flex;
	}
	.flex_wrap_sp{
		flex-wrap: wrap;
	}
	.j_content_c_sp{
		justify-content: center;
	}
	.j_content_en_sp{
		justify-content: flex-end;
	}
	.j_content_sb_sp{
		justify-content: space-between;
	}
	.a_items_c_sp{
		align-items: center;
	}
	.a_items_en_sp{
		align-items: flex-end;
	}
	.f-direction_re_sp{
		flex-direction: row-reverse;
	}

a.link_disabled_sp{
	pointer-events: none;
}


/*===============================================
●マージンボトム設定
===============================================*/

.mb0_sp{
	margin-bottom:0px!important;
}
.mb5_sp{
	margin-bottom:5px!important;
}
.mb10_sp{
	margin-bottom:10px!important;
}
.mb15_sp{
	margin-bottom:15px!important;
}
.mb20_sp{
	margin-bottom:20px!important;
}
.mb25_sp{
	margin-bottom:25px!important;
}
.mb30_sp{
	margin-bottom:30px!important;
}
.mb35_sp{
	margin-bottom:35px!important;
}
.mb40_sp{
	margin-bottom:40px!important;
}
.mb45_sp{
	margin-bottom:45px!important;
}
.mb50_sp{
	margin-bottom:50px!important;
}
.mb55_sp{
	margin-bottom:55px!important;
}
.mb60_sp{
	margin-bottom:60px!important;
}
.mb65_sp{
	margin-bottom:65px!important;
}
.mb70_sp{
	margin-bottom:70px!important;
}
.mb75_sp{
	margin-bottom:75px!important;
}
.mb80_sp{
	margin-bottom:80px!important;
}
.mb85_sp{
	margin-bottom:85px!important;
}
.mb90_sp{
	margin-bottom:90px!important;
}
.mb95_sp{
	margin-bottom:95px!important;
}
.mb100_sp{
	margin-bottom:100px!important;
}
	
	
/*===============================================
●ボタン
===============================================*/


/*===============================================
●フォントサイズ・カラー設定
===============================================*/

	.font_10px_sp{
		font-size: 10px;
		line-height:1.7em;
	}
	.font_14px_sp{
		font-size: 14px;
		line-height:1.7em;
	}
	.font_24px_sp{
		font-size: 24px;
		line-height:1.7em;
	}
	.font_28px_sp{
		font-size: 28px;
		line-height:1.7em;
	}
	.font_40px_sp{
		font-size: 40px;
		line-height:1.7em;
	}
	
/*ヘッダー設定
------------------------------------------------------------*/

	.header_logo{
		width: 250px;
		padding-bottom: 0;
	}
	.header_sns{
		position:inherit;
		margin-bottom: 20px;
	}
	.header_sns ul{
		display: flex;
		gap:10px;
		justify-content:center;
		align-items: center;
	}

/*wrap設定
------------------------------------------------------------*/

.wrap{
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing:border-box;
}
.wrap800{
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing:border-box;
}
.wrap1100{
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing:border-box;
}
	.wrap1200{
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing:border-box;
}
	.wrap1400{
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing:border-box;
}
.wrap1500{
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing:border-box;
}
.wrap1600{
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	box-sizing:border-box;
}
	.next_mv{
		width: 100%;
		overflow: hidden;
	}
	.next_mv_inner{
		width: 200%;
		margin-left: -50%;
	}
	.path{
		text-align: right;
	}
	.path a{
		text-decoration: none;
	}
	.path a:hover{
		text-decoration: none;
	}
	
		.next_title h1{
		width: 100%;
			padding: 10px 0;
	}
	.next_title div{
		width: 100%;
		text-align: center;
	}

	.mainbgarea{
		background-image: url("images/body_bg.png");
		background-repeat: no-repeat;
		background-size: 300px auto;
		background-position: right 0px top 200px;
	}

/*フッター設定
------------------------------------------------------------*/

	.footer_bnr{
		padding-top: 100px;
		padding-bottom: 100px;
	}
	.footer_bnr_box div{
		margin-bottom: 20px;
	}
	.footer_main{
		background-color: #FDF3F7;
		border-top: 3px double #E468A2;
		padding: 80px 0;
	}
	.footer_sns{
		gap:20px;
	}
	.footer_logo{
		width: 350px;
		margin-left: auto;
		margin-right: auto;
	}
	
	.footer_map{
		padding-bottom: 450px;
	}
	.footer_copyright_area{
		padding: 20px 0 80px;
		background-color: #E468A2;
	}
	.footer_copyright_wrap{
		text-align: center;
	}
	.footer_copyright_wrap small{
		font-size: 16px;
/*		font-weight: bold;*/
		color: #fff;
	}
	
	

	#PageTopBtn{
		bottom: 100px;
		width: 100px;
		height: 40px;
		right: 0;
	}
	#PageTopBtn:hover{
		bottom: 100px;
		transition:all 0.5s;
	}
#PageTopBtn img{
		width: 100px;
}
	
	.footer_fix{
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		display: flex;
		justify-content: space-between;
	}
	.footer_fix a{
		text-decoration: none;
		text-align: center;
		display: block;
		width: 33%;
		color: #fff;
		background-color:#0DC755;
		height: 40px;
		line-height: 40px;
	}
	.footer_fix a:nth-child(2){
		width: 34%;
		background-color:#F3A173;
	}
	.footer_fix a:nth-child(3){
		background-color:#E469A3;
	}
	.footer_fix a:hover{
		text-decoration: none;
		opacity: 1;
	}
	/* ホーム設定
------------------------------------------------------------*/
	
	.top_mv img{
		width: 100%;
	}
	.top_area1{
		padding-top: 50px;
	}
	.top_area1_l{
		width: 100%;
		margin-bottom: 20px;
	}
	.top_area1_r{
		width: 100%;
	}
	.top_area1_bt a{
		margin-bottom: 10px;
	}
	.top_area2{
		background-color: #FDF3F8;
		padding: 80px 0;
	}
	.top_area2_title{
		background-image: url("images/top_txt01.png");
		height: 40px;
		background-repeat: no-repeat;
		background-position: center top;
	}
	.top_h2_1{
		color: #888887;
	}
	.topa_area2_box1{
		gap:20px;
	}
	.top_area3{
		background-image: url("images/top_bg01.png");
		height: 750px;
		background-size: 1920px auto;
		background-repeat: repeat-x;
		background-position: center top;
		padding-top: 150px;
	}
	.top_area3_innner{
		background-color: rgba(255,255,255,0.90);
		padding: 5px;
		border-radius: 10px;
	}
	.top_area3_innner{
		background-color: rgba(255,255,255,0.90);
		padding: 5px;
		border-radius: 10px;
	}
	.top_area3_innner2{
		border: 1px solid #DED3C6;
		border-radius: 10px;
		padding: 80px 0;
	}
	.top_news_l{
		width: 100%;
		margin-bottom: 20px;
	}
	.top_news_r{
		width: 100%;
	}
	.top_news_r_box{
		height: 280px;
		overflow-y: scroll;
	}
	.top_news_r_box ul{
		border-top: 1px solid #CCC;
		border-bottom: 1px solid #CCC;
	}
	.top_news_r_box ul li{
		border-bottom: 1px solid #CCC;
		padding: 20px 10px;
	}
	.top_news_r_box ul li div:nth-child(1){
		width: 100%;
	}
	.top_news_r_box ul li div:nth-child(2){
		width: 100%;
	}
	.top_news_r_box ul li div a{
		text-decoration: none;
	}


		
/* 問い合わせ 設定
------------------------------------------------------------*/

.info_box5{
	margin-bottom:10px;
}

.info_box5 div:nth-child(1){
	margin-bottom:5px;
}

/* 下層 設定
------------------------------------------------------------*/
	
	.next3_box2{
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100px;
		width: 100%;
		border: 10px solid #E469A2;
		background-color: #fff;
		margin-bottom: 20px;
	}
	.next_h2_1{
		border-bottom: 1px solid #BCAF93;
		background-image: url("images/title_ico01.png");
		background-repeat: no-repeat;
		background-size: 40px auto;
		min-height: 50px;
		padding-left: 60px;
	}

	
	.next4_table1{
		width: 100%;
		border-bottom: 1px solid #BDB092;
		border-right: 1px solid #BDB092;
		text-align: center;
	}
	.next4_table1 thead th{;
		background-color: #F1EEE9
	}
	.next4_table1 th{
		width: 33.33%;
		border-top: 1px solid #BDB092;
		border-left: 1px solid #BDB092;
		padding: 10px;
		text-align: center;
	}
	.next4_table1 td{
		width: 33.33%;
		border-top: 1px solid #BDB092;
		border-left: 1px solid #BDB092;
		padding: 10px;
		text-align: center;
	}
	.next4_ul li{
		list-style-type: disc;
		margin-left: 1em;
	}

	.next7_table{
		width: 100%;
		border-bottom: 1px solid #BDB092;
		border-right: 1px solid #BDB092;
	}
	.next7_table th{
		width: 30%;
		border-top: 1px solid #BDB092;
		border-left: 1px solid #BDB092;
		padding: 10px 10px;
		background-color: #F1EEE9
	}
	.next7_table td{
		width: 70%;
		border-top: 1px solid #BDB092;
		border-left: 1px solid #BDB092;
		padding: 10px 10px;
	}
	.next8_box1_l{
		width: 100%;
		margin-bottom: 20px;
	}
	.next8_box1_r{
		width: 100%;
	}
	.next7_col_img img{
		width: 100%;
		aspect-ratio: 340 / 255;
		object-fit: cover;
	}
	.contact_box1{
		background-color:#E469A3;
		color: #fff;
		padding: 40px;
	}

}