@media screen and (max-width: 599px){
@charset "utf-8";

/* for smartphone */
html {
    position: relative;
    overflow-x: hidden;
}
/*////////////////////////////*/

body {
	font: 100%/1.4 "UD Shin Go Regular", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	background-color: #fff;
	margin: 0;
	padding: 0;
	color: #000;
	
	min-width:360px; 
	width:100%;
	
	font-size:16px;
	
	-webkit-text-size-adjust: 100%;
	
/* for smartphone */
    position: relative;
    left: 0;
    overflow-x: hidden;
/*////////////////////////////*/
}

/* for smartphone */
img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	}
	/*////////////////////////////*/

.sp{ display: none; }
	
/* ~~ エレメント / タグセレクター ~~ */
ul, ol, dl { /* ブラウザー間の相違により、リストの余白とマージンをゼロにすることをお勧めします。一貫性を保つために、量をここで指定するか、リストに含まれるリスト項目 (LI、DT、DD) で指定できます。より詳細なセレクターを記述しない限り、ここで指定する内容が .nav リストにも適用されることに注意してください。 */
	padding: 0;
	margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;	 /* 上マージンを削除すると、マージンを含む div からマージンがはみ出す場合があるという問題を回避できます。残った下マージンにより、後続のエレメントからは離されます。 */
}
a img { /* このセレクターは、一部のブラウザーでイメージをリンクで囲んだ場合にイメージの周囲に表示される初期設定の青いボーダーを削除します。 */
	border: none;
}
/* ~~ サイトのリンクのスタイル付けは、ホバー効果を作成するセレクターグループも含め、この順序にする必要があります。~~ */
a:link {
	color: #42413C;
	text-decoration: underline; /* 非常に特殊な表示方法でリンクをスタイル付けする場合を除き、一目で見分けられるように下線を指定することをお勧めします。 */
}
a:visited {
	color: #6E6C64;
	text-decoration: underline;
}
a:hover, a:active, a:focus { /* このセレクターグループは、キーボードを使用するユーザーに対し、マウスを使用するユーザーと同じホバー効果を提供します。 */
	text-decoration: none;
}

#button{ display:none; }
#slide_menu{ display:none; }

/* ドロワーメニュー */
.ul_open_h{
	    background: gray;
	    color: #000;
	    margin: 0;
	    padding: 0;
	    list-style: none;
	    top: 0;

	    height: 100%;
	    -webkit-transition: .35s ease-in-out;
	    -moz-transition: .35s ease-in-out;
	    transition: .35s ease-in-out;
	    overflow-y: scroll; 
	    position: fixed;
		
		z-index:50;
		padding-top:50px;

		background-color:#dedede;
		
		
}
.ul_open_h li{
	    padding: 7px;
	    width: 220px;
		border-bottom:1px #333 solid;
		
		font-size:0.85em;
}
.ul_open_h li.bottom{	margin-bottom:100px; }

.ul_open_h li a:link {
	color: #000;
	text-decoration: underline; /* 非常に特殊な表示方法でリンクをスタイル付けする場合を除き、一目で見分けられるように下線を指定することをお勧めします。 */
}
.ul_open_h li a:visited {
	color: #000;
	text-decoration: underline;
}

.open-sub{ margin:0 0 0 10px; list-style-position:inside; list-style-type:disc; }
.open-sub li{ font-size:1.0em;
	border-bottom:none; 
	padding:5px; 
}

.dmenu{ padding:0 0 0 10px; }

.open-1{
	    right : -100%;
}
.open-1.active{
    right : 0px;
}

.move-1.on.btn{
    position: fixed;
    right: 25px;
    top: 10px;
}

.btn{     width: 50px;
    height: 50px;
    position: absolute;
    right :10px;
    top: 30px;
/*    background: #fff; */

		z-index:90;
}

.btn:before,
.btn:after,
.btn span{
    display: block;
    width: 80%;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
.btn span{
    height: 5px;
    background-color: #a2b6ff;
    top: calc(50% - 1.5px);
}

.btn:before{
    content: "";
    top: calc(25% - 5px);
    border-top: 5px solid #a2b6ff;
}
.btn:after{
    content: "";
    bottom: calc(25% - 5px);
    border-bottom: 5px solid #a2b6ff;
}
.btn.on span{
    display: none;
}

.btn.on:before{
    top: calc(50% - 1.5px);
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
}
.btn.on:after{
    bottom: calc(50% - 1.5px);
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
}

.btnlink{
    width: 90%;
    display: block;
    margin: auto;
    border: 1px solid #0060ff;
    border-radius: 5px;
    background: #4285F4;
    height: 35px;
    line-height: 35px;
    text-align: center;
    margin-bottom: 35px;
    color: #fff;
}
.linkbox a{
    text-decoration: none;
}

/* 位置固定ボタン */
.fixed_btn
{
  position: fixed;
  top: 100px; 
  right: 40px;
  padding: 0;
  
  z-index:49;
	
  overflow: visible; 
}
.fixed_btn img{
  display:block;
  transition-duration: 0.5s;
	
  cursor: pointer;
}
.fixed_btn img:hover{
  transform: scale(1.2,1.2);
  transition-duration: 0.5s;
}

/* ~~ ヘッダーには幅は指定されません。ヘッダーはレイアウトの幅全体まで広がります。ヘッダーには、ユーザー独自のリンクされたロゴに置き換えられるイメージプレースホルダーが含まれます。~~ */
#headwrap{
	width:100%;
	min-height:100px;
	min-width:360px;
	position:relative;
	
	background:url("images/header_bk.png") center top no-repeat;
}

#headarea{
	width:360px;
	margin:0 auto;
	
	min-height:100px;
	height:auto;
	position:relative;	
}
	
#headarea img.h-logo{ position: absolute; top:26px; left:20px;}
#headarea img.h-tel{  display: none; }
#headarea img.h-mail{ display: none; }
#headarea img.h-access{ display: none; }
#headarea img.h-menu{ position: absolute; top:80px; left:310px; }

.s-bg-slider {
 	width: 100%;
   	height: 140px;
   	background-position:center center;
/*   	background-size: cover; */
   	display: block;
   	align-items: center;
   	justify-content: center;
}

/* top page */
#mmwrap{ width:100%;	 display:block; min-width:360px; 
	min-height:1px;
	position:relative;
	
	background-color:#fff;
	margin-top:1px; 
}
	
.menu{ width:330px; height:450px; 	margin: 0 auto; position:relative;
	background: url("images/menu_bk_s.png") center top no-repeat; }

.menu img{ padding: 8px 0px 0 8px; }



/* bannerエリア*/
#barea{ display:none; }

/* main area */
main{ min-height: 500px;}

#marea{		 width:360px; margin:0 auto; margin-top:10px; position:relative;
	padding:0 0 50px 0; text-align: center;
	 min-height:100px;  }
.plush{ min-height:500px;  }
	
/* toppage news */
.topttl{ margin-top:50px;}
#toptitle{ width:320px; margin:0 auto; }

.s-ttl{ width:100%; position: relative; margin-bottom:10px;}
.t-tolist{ position:absolute ; top:5px; left:250px;}

.n-title, .n-title2{ margin:0 auto; font-size:1.1em; text-align: left; width:320px;
	border-bottom: 1px #000 dashed; padding:10px 0 5px 0;
	}
.n-title2{ margin:0 0 10px 20px; }

.n-title2:before{
	font-family: "Font Awesome 5 Free";
	content: "\f111";
	font-weight: 900;
	
	color:#ffa63b;
	margin-right:10px;
}

.carea{ width:360px; margin: 0 auto; margin-top:10px;}
	
.c-list{ margin:0 0 10px 10px; font-size:1.0em; text-align: center; width:105px;
	float: left; padding:10px 0; background: skyblue;
	display: inline-block; min-height:50px;
	}

.c-list02{ margin:0 0 10px 10px; font-size:1.0em; text-align: center; width:75px;
	float: left; padding:10px 0; background-color:#bdf0ce; ;
	display: inline-block;
	}

.c-list:hover, .c-list02:hover {
box-shadow: 0 5px 10px #666;
transform: translate(0 ,-3px);
}


.new{ vertical-align:middle; }

.next{ width:100%; text-align:center; padding:10px 0; margin:20px 0 0 0; }
.toprev:before{
	font-family: "Font Awesome 5 Free";
	content: "\f100";
	font-weight: 900;
	font-size:1.2em;
	
	color:#393a34;
}
.tonext:after{
	font-family: "Font Awesome 5 Free";
	content: "\f101";
	font-weight: 900;
	font-size:1.2em;
	
	color:#393a34;
}

.kiji{ width:800px; margin:0 auto; text-align:left; margin-top: 20px;
	margin-bottom:50px; }
.kiji:before{	clear: both; }

/* ayumi */
dl.ayumi{ list-style-type:none; width:360px; margin:0 0 40px 0px; list-style-position:inside; display:block; }
dl.ayumi dt{ margin:8px 0 8px 0; position:relative; width:70px; float:left;  line-height:1.4em; text-align: right;}
dl.ayumi dd{ margin:8px 0 8px 5px; position:relative; width:280px; float:left; line-height:1.4em; text-align: left; }
	
/* ondo */
ol.ondo{ width:350px; margin: 0 auto; margin-bottom: 20px; margin-left:20px; }
ol.ondo li{ text-align: left; margin: 0 0 20px 0;}
.odaondo{ width: 350px;}

/* policy */
dl.policy{ margin:20px 0 20px 10px; width:340px; }
dl.policy dt{ font-weight:bold; font-size:1.2em; text-align: left; }
dl.policy dd{ font-size:1.0em; margin:10px 0 30px 20px; line-height:1.5em; 
	text-align: left; 	}

/* mail */
.hissu{ display: inline-block; padding: 3px; background-color: #FD080C; color: #fff; 
	min-width:30px; width:auto; font-size: 0.8em; border-radius: 5px; 
	text-align: center;}

form {
  max-width: 100%;
  display: block;
	
	margin-top:30px;
	}
form ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
form dl {
      margin: 0 0 0.25em 0; 
      clear: both;
      display: inline-block;
  }
form dt{ text-align: left; }
form dd{ margin: 0 0 2em 0; text-align: left; }

	label {
    display: block;
    margin: 0 0 0.5em 0;
    color: blue;
    font-size: pxtoem(16, 16);
  }
  input {
    margin: 0 0 0.5em 0;
    border: 1px solid grey;
    padding: 6px 10px;
    color: dark_grey;
    font-size: pxtoem(16, 16);
  }
  textarea {
    border: 1px solid $grey;
    padding: 6px 10px;
    width: 100%;
    color: dark_grey;
  }
  small {
    color: blue;
    margin: 0 0 0 0.5em;
  }

/* common */
#navi{ display:none; }

h1.sub{
  padding-bottom: .2em;
  border-bottom: 5px solid #98aeff;

    font-size: 26px;            /* 文字サイズ指定 */
    text-align:  left;        /* 文字位置指定 */
    width:  350px;              /* 幅指定 */
    margin: 0 auto ;        /* 周りの余白指定 */

	font-family:"UD Shin Go Medium";
	
	margin-top:0;
	margin-bottom:20px;
	vertical-align: bottom;
	}
h1.sub img{ margin-right: 10px; vertical-align: bottom;}

h2.sub {
     position: relative;
     padding:0 0 0.5em 0.7em;
     border-bottom: 1px solid black;
	
	 font-size: 24px;            /* 文字サイズ指定 */
	 width:340px; 
	margin: 0 auto;
	margin-top:40px; 
	margin-bottom:20px; 
	
	text-align: left;
}
 
h2.sub::after {
     position: absolute;
     top: 0.2em;
     left:0;
     content: '';
     width: 5px;
     height:1.2em;
     background-color: #98aeff;
}

h3.sub {
  position: relative;
  padding: 0 .5em .5em 2em;
 
	width:340px; 
	margin: 0 auto;
	margin-top:40px; 
	margin-bottom:20px; 
	
	text-align: left;
	border-bottom: 1px solid #ccc;
	font-size: 1.2em;

}
h3.sub::before,
h3.sub::after {
  position: absolute;
  content: '';
  border-radius: 100%
}
h3.sub::before {
  top: .2em;
  left: .2em;
  z-index: 2;
  width: 18px;
  height: 18px;
  background: /*rgba(150, 150, 150, .5)*/#96aeff;
}
h3.sub::after {
  top: .7em;
  left: .7em;
  width: 13px;
  height: 13px;
  background: /*rgba(210, 210, 210, .5)*/#d9e9fa;
}

h4.sub{
	margin: 20px 0 20px 20px;
	font-size: 1.2em;
	color: #780000;
	text-align: left;
}

dl.sub{ list-style-type:none; width:350px; margin:0 0 40px 20px; list-style-position:inside; display:block; }
dl.sub dt{ margin:8px 0 8px 0; position:relative; width:150px; line-height:1.5em; text-align: left;}
dl.sub dt:after{
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: -1em;
	width: 6px;
	height: 6px;
	background-color: #0481BA;
	border-radius: 100%;
}
dl.sub dd{ margin:8px 0 8px 20px; position:relative; width:300px; line-height:1.5em; text-align: left; }
	
ul.sub, ul.sub02{ list-style-type:none; width:340px; margin:0 0 10px 30px; list-style-position:outside; }
ul.sub li, ul.sub02 li{ margin:0 0 10px 0; position:relative; line-height:2.0em;
	text-align: left; }
ul.sub02 li{ line-height:1.5em; text-align: left;}

ul.sub li:after, ul.sub02 li:after{
	display: block;
	content: '';
	position: absolute;
	top: .7em;
	left: -1em;
	width: 6px;
	height: 6px;
	background-color: #0481BA;
	border-radius: 100%;
}
	
.small85{ font-size:85%; }
.large11{ font-size:1.1em; }
.large12{ font-size:1.2em; }
.large14{ font-size:1.4em; }
.large18{ font-size:1.8em; }
.strong{ font-weight:bold; }

.txt{ width:350px; margin:0 0 10px 10px; line-height:1.8em; font-size:1.0em; text-align:left;  }
.txt02{ width:340px; margin:0 0 10px 20px; line-height:1.8em; font-size:1.0em; text-align:left;  }

.lh20{ line-height: 2em;}
.lh25{ line-height: 2.5em;}
	
.red{ color:#F00; }
.orange{ color:#F60; }
.blue{ color:#36C; }
.green{ color:#009933; }
.sitecolor{ color:#98aeff;}

.imgarea{ width:100%; text-align:center; font-size:1.0em; margin-left:-5px; }
.imgarea02{ width:49%; text-align:center; font-size:1.0em; float: left;}
.imgarea03{ width:31%; text-align:center; font-size:0.9em; float: left; margin-top:5px; margin-right:7px;}
.imgarea04{ width:100%; text-align:center; font-size:1.0em; margin: 0 auto;}
.imgarea img, .imgarea02 img, .imgarea03 img{ padding: 5px; }

.tolist{ width:98%; text-align:right; margin-top:10px; }

.pdfarea{ width:90%; padding:15px 10px; font-size:0.9em; text-align:left; 
	border:1px #ccc solid; margin: 0 auto;
	margin-top:20px; } 

.link:after{
	font-family: "Font Awesome 5 Free";
	content: "\f101";
	font-weight: 900;
	
	color:#F00;
	
	margin:-5px 0 0 5px;
	font-size: 1.2em;
}

.pdf:after{
	font-family: "Font Awesome 5 Free";
	content: "\f15c";
	font-weight: 400;
	
	color:#F00;
	
	margin:-5px 0 0 5px;
	font-size: 1.2em;
}

.ysize{
	width:360px; height:200px;	
}
	
/**********************************************************************/

	
/* square */
.square:before{
	font-family: "Font Awesome 5 Free";
	content: "\f0c8";
	font-weight: 900;
	
	margin:-5px 8px 0 5px;
	color:#0481BA;
	
}
	
/* ~~ フッター ~~ */
#fwrap{ width:100%; background-color:#bdf0ce;  display:block; min-height:300px; text-align:center;
 }
.footarea{ width:360px; min-height:300px; position:relative; margin:0 auto; }
	
.footarea div.addrarea{ width:100%; padding:20px 0 10px 0; text-align: center;}
.footarea div.addrarea img{ padding:10px;}

.footarea div.fmenu{ float:left; margin:30px 20px 0 100px; text-align:left; display:block;
		min-height:200px;	height:auto; /*padding:0 20px 0 10px; */
}
.footarea div.bnrarea{ width:100%; padding:0 0 20px 0; text-align: center;}
.footarea div.bnrarea img{ padding: 10px 10px;}


#fcopy{ width:100%; background-color:#bdf0ce; display:block; height:15px; text-align:center; padding:3px 0; font-size:0.8em; }
#fcopy div {
	width:360px;
	margin:0 auto;
	
	min-height:15px;
	height:auto;
	position:relative;
	
	text-align:center;
	
	font-size:0.85em;
	
}
	

/* ~~ その他の float/clear クラス ~~ */
.fltrt {  /* このクラスを使用すると、ページ内でエレメントを右にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
	float: right;
	margin-left: 8px;
}
.fltlft { /* このクラスを使用すると、ページ内でエレメントを左にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
	float: left;
	margin-right: 8px;
}
.clearfloat { /* このクラスは、#footer が #container から削除されているか取り出されている場合に、<br /> または空の div で、フローティングさせる最後の div に続く最後のエレメントとして (#container 内に) 配置できます。 */
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
}
.bottom50{
	margin-bottom:50px; 
}

/*------------------------------------------------------------------------------------------*/

/*/////////////////////////////////////*/
.shadow01{
    /*影を入れる*/
    -webkit-box-shadow: 0 3px 2px -1px #8d8c8c;
    -moz-box-shadow: 0 3px 2px -1px #8d8c8c;
     box-shadow: 0 3px 2px -1px #8d8c8c;
}

.kana{ ime-mode:active; }
.rome{ ime-mode:disabled; }


/*****************************************************/
p{ margin:10px 0 0 0; }

/******************************************************************/

}