@media screen and (max-width: 599px){
@charset "utf-8";

/* for smartphone */
html {
    position: relative;
   f overflow-x: hidden;
}
/*////////////////////////////*/

body {
	font: 100%/1.4 "ヒラギノ角ゴ 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:14px;
	font-family:"UD新ゴ R";
	
	-webkit-text-size-adjust: 100%;

/* for smartphone */
    position: relative;
    left: 0;
    overflow-x: hidden;
/*////////////////////////////*/
}

/* for smartphone */
img{
max-width: 100%;
height: auto;
width /***/:auto;
}
/*////////////////////////////*/

/* ~~ エレメント / タグセレクター ~~ */
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; }

/* スライドショー */
#slideshow {
   position: relative;
   width:  360px; /* 画像の横幅に合わせて記述 */
   height: 144px; /* 画像の高さに合わせて記述 */
}
#slideshow img {
   position: absolute;
   top: 0;
   left:0;
   z-index: 8;
   opacity: 0.0;
}
#slideshow img.active {
   z-index: 10;
   opacity: 1.0;
}
#slideshow img.last-active {
   z-index: 9;
}
/* ドロワーメニュー */
.ul_open_h{
	    background: gray;
	    color: #000;
	    margin: 0;
	    padding: 0;
	    list-style: none;
	    top: 0;

	    height: 100%; 
		height:calc(100% - 50px);
	    -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:2000px; }

.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 :15px;
    top: 10px;
    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: 3px;
    background-color: #000;
    top: calc(50% - 1.5px);
}

.btn:before{
    content: "";
    top: calc(25% - 3px);
    border-top: 3px solid #000;
}
.btn:after{
    content: "";
    bottom: calc(25% - 3px);
    border-bottom: 3px solid #000;
}
.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;
}


/* ~~ この固定幅コンテナが他の div を囲みます。~~ */
.container {
	width: 100%;

	margin: 0 auto; /* 幅に加え、両側を自動値とすることで、レイアウトが中央に揃います。 */
	
	overflow:hidden;

}

.sp{ display:none; }

/* ~~ ヘッダーには幅は指定されません。ヘッダーはレイアウトの幅全体まで広がります。ヘッダーには、ユーザー独自のリンクされたロゴに置き換えられるイメージプレースホルダーが含まれます。~~ */
.header-wrap {
	width:100%;
	min-height:121px;
	min-width:360px;
	background-color:#00b9ef;
	
}
	
.header {
	width:360px;
	margin:0 auto;
	
	height:121px;
	position:relative;
	
	text-align:center;
	
}
.h-logo{ position:absolute; left:10px; top:10px; }
.h-nyuen, .h-shien, .h-zaien{ display:none;}

.s-h-nyuen{ position:absolute; left:7px; top:75px; }
.s-h-shien{ position:absolute; left:126px; top:75px; }
.s-h-zaien{ position:absolute; left:246px; top:75px; }

.sub-header {
	width:360px;
	margin:0 auto;
	
	height:99px;
	position:relative;
	
	text-align:center;
	
	
}

.hs-logo{ position:absolute; left:15px; top:14px; }
.hs-menu{ position:absolute; right:75px; bottom:30px; }

/* ~~ これはレイアウト情報です。~~ 

1) 余白は、div の上部または下部にのみ配置されます。この div 内のエレメントには、それ自体に余白があるので、ボックスモデル計算を行う必要がありません。ただし、div 自体に両側の余白やボーダーを指定した場合、その値が加算されたものが合計幅になることに注意してください。div 内のエレメントの余白を削除し、さらにその div 内に、全体のデザインに必要な幅や余白を指定していない 2 つ目の div を追加することもできます。

*/

.content {
	width: 100%;
	margin: 0 auto; /* 幅に加え、両側を自動値とすることで、レイアウトが中央に揃います。 */
	
}

.top-wrap{ width:100%;	 display:block; min-width:360px; text-align:center;
	position:relative; height:144px;
	background:url(images/top_bk.png) top center no-repeat;	 }
.toparea-s{ display:none; }


/* top page */
.menu-wrap{ width:100%;	 display:block; min-width:360px; text-align:center;
	min-height:35px;
	position:relative;
	padding:0 0 0 10px; 
	
	background-color:#00b9ef;
}

.menu{ display:none;	 }

.mmenu{ margin:7px 30px 0 0; }
.sm-menu{ width:360px; height:35px; 	margin: 0 auto; position:relative;  text-align:center;}

.s-bnr{ margin:0 0 0 5px; }

/* 1column */
.main-area{ width:360px; margin:0 auto; margin-top:5px; position:relative;
	 min-height:500px; text-align:left; margin-bottom:20px;  }

/* 2column */

.rside-wrap{ width:340px; margin-top:8px; margin:0 0 0 10px; }
.rside{ width:340px; /*float:right;*/  border-right:1px #ccc solid; border-left:1px #ccc solid; margin-bottom:20px;  }
ul.right{ margin:0; list-style-type:none; font-weight:normal; border-top:1px #ccc solid;  }
ul.right li{ font-size:0.9em; margin:0; font-weight:normal; padding:0.8em 0 0.8em 0.8em;
	border-bottom:1px #ccc solid; text-align:left; }
ul.right li.sel{ background-color:#eee; }
ul.right li::before{
	font-family: "FontAwesome";
	content: "\f0da";
	font-weight: 900;
	
	color:#1a7dce;
	
	margin:-5px 5px 0 0;
	font-size: 1.3em;
}

.lside{ width:100%;  background-color:#fff; min-height:700px; 	margin:0 0 30px 0;  }


h1.news{ margin:0 auto; position:relative; }
h1.news img.toptolist{ position:absolute; top:20px; right:20px; }

h1.letter{ margin:0 auto; position:relative; margin:20px 0 0 5px; }
h1.letter img.toptolist{ position:absolute; top:20px; right:20px; }

h1.sub{
  position: relative;
  padding: .5em .5em .5em 2em;
  border-top: 2px solid #00b9ef;
  border-bottom: 2px solid #00b9ef;
  font-family: "Jun 501";
  
  margin-top:10px;
}
h1.sub::after {
  position: absolute;
  top: .8em;
  left: .8em;
  z-index: 2;
  content: '';
  width: 20px;
  height: 20px;
  background-color: #1a7dce;
  border-radius:100%;
}

h2.sub {
  position: relative;
  display: inline-block;
  padding: 0 55px;
  
  color:#1a7dce;
  margin:20px 0;
}

h2.sub:before, h2.sub:after {
  content: '';
  position: absolute;
  top: 45%;
  display: inline-block;
  width: 45px;
  height: 2px;
  border-top: dotted 1px #1a7dce;
  border-bottom: dotted 1px #1a7dce;
}

h2.sub:before {
  left:0;
}
h2.sub:after {
  right: 0;
}

h3.sub {
  position: relative;
  padding-left: 1.2em;/*アイコン分のスペース*/
  line-height: 1.4;
  
  color:#36ae36;
  font-size:1.2em;
  
  margin:30px 0 20px 10px;
}

h3.sub:before {
  font-family: "FontAwesome";
  content: "\f055";/*アイコンのユニコード*/
  position: absolute;/*絶対位置*/
  font-size: 1.2em;/*サイズ*/
  left: 0;/*アイコンの位置*/
  top: 0;/*アイコンの位置*/
  color: #36ae36; /*アイコン色*/
}

h4.sub {
  position: relative;
  line-height: 1.4;
  
  color:#36ae36;
  font-size:1.2em;
  
  margin:30px 0 20px 20px;
  color:#66C;
}


.small85{ font-size:85%; }
.large11{ font-size:1.1em; }
.large12{ font-size:1.2em; }
.large14{ font-size:1.4em; }
.strong{ font-weight:bold; }

.red{ color:#F00; }
.orange{ color:#F60; }
.blue{ color:#36C; }
.green{ color:#009933; }
.pink{ color:#E97874; }

.ryumin{ font-family:"リュウミン M-KL"; }

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

.txt{ width:340px; margin:0 0 10px 10px; line-height:1.7em; font-size:1.0em; text-align:left;  }
.txt02{ width:88%; margin:0 0 10px 30px; line-height:1.7em; font-size:1.0em; text-align:left;  }

.newsarea{ margin:0 auto; margin-top:20px; width:360px; height:auto; text-align:left;
	text-align:left;  }
	
.newsttl{ width:340px; float:left; margin-bottom:10px;  }
.newsttl:before{
	font-family: FontAwesome;
	content: "\f111";
	
	color:#221E1F;
	
	margin:-5px 0 0 5px;
	font-size: 1.2em;
}
.new{ vertical-align:bottom;}
.topkiji{ width:340px; margin-bottom:10px;  }

.letterttl{ width:340px;  margin:20px 0;  }

.topttl-news{ width:360px; font-size:0.9em; padding:5px 0 5px 10px; 
	background:url(images/sp_to_list_b.png) top 10px right 20px no-repeat;
	border-bottom:1px #00b9ef dotted; min-height:30px; text-align:left;
}
.topttl-en{ width:360px; font-size:0.9em; padding:5px 0 5px 10px; 
	background:url(images/sp_to_list_v.png) top 10px right 20px no-repeat;
	border-bottom:1px #b0a6d1 dotted; min-height:30px; text-align:left;
}
.topttl-shien{ width:360px; font-size:0.9em; padding:5px 0 5px 10px; 
	background:url(images/sp_to_list_g.png) top 10px right 20px no-repeat;
	border-bottom:1px #9bd9a6 dotted; min-height:30px; text-align:left;
}

.topttl-news div, .topttl-en div, .topttl-shien div{ width:310px; display:inline-block;  }

/* news */
.n-title{ margin:0 0 10px 0; font-size:1.1em; width:100%; border-bottom:1px #ccc solid; 
	padding:5px 0 5px 0; position:relative; min-height:25px; text-align:center;
	font-weight:bold; }

.imgarea{ width:100%; text-align:center; font-size:1.0em; }
.imgarea2{ width:45%; text-align:center; font-size:1.0em; float:left; }
.kiji{ width:340px; margin:0 auto; margin:10px 0 30px 8px; text-align:left; }



.next{ width:100%; padding:10px 0; font-size:0.9em; text-align:center; }
span.tonext:after{
	font-family: FontAwesome;
	content: "\f04e";
	
	color:#eb5c01;
	
	margin:-5px 0 0 5px;
	font-size: 1.0em;
}
span.toprev:before{
	font-family: FontAwesome;
	content: "\f04a";
	
	color:#eb5c01;
	
	margin:-5px 5px 0 0;
	font-size: 1.0em;
}

.navi{ display:none; }

.link:after{
	font-family: FontAwesome;
	content: "\f08e";
	
	color:#F00;
	
	margin:-5px 0 0 5px;
	font-size: 1.2em;
}

.link2:after{
	font-family: FontAwesome;
	content: "\f101";
	
	color:#F00;
	
	margin:-5px 0 0 5px;
	font-size: 1.3em;
}

.pdfarea{ width:340px; margin:0 auto; padding:15px 10px; font-size:0.9em; text-align:left; border:1px #ccc solid; 
	margin-top:20px 0 20px 10px; }


.pdf:after{
	font-family: FontAwesome;
	content: "\f1c1";
	
	color:#F00;
	
	margin:-5px 0 0 5px;
	font-size: 1.2em;
}

.tolist{ width:95%; text-align:right; margin-top:10px; }
.tolist img{ padding:20px; }

dl.sub, dl.sub02{ width:340px; margin:0 0 20px 10px;  }

dl.sub dt,  dl.sub02 dt{
clear: both;
width: 150px;
text-align:left;
padding:5px 0 5px 5px;
font-size:1.1em;

}
dl.sub02 dt{
	width:250px; 
}

dl.sub dt:before, dl.sub02 dt:before{
	font-family: FontAwesome;
	content: "\f04d ";
	
	color:#1a7dce;
	
	margin:-5px 0 0 5px;
	font-size: 1.0em;
}

dl.sub dd, dl.sub02 dd {
margin:0;
margin: 5px 10px 20px 0;
text-align:left;

font-size:1.0em;

width: 340px;
float:left;

line-height:1.6em;

}
dl.sub02 dd{
	width:300px; 
}

ul.sub, ul.sub02{ list-style-type:none; width:340px; margin:0 0 10px 20px; list-style-position:outside; }
ul.sub li, ul.sub02 li{ margin:0 0 10px 0; position:relative; line-height:2.0em;  }
ul.sub02 li{ line-height:1.5em; }

ul.sub li:after, ul.sub02 li:after{
	display: block;
	content: '';
	position: absolute;
	top: .7em;
	left: -1em;
	width: 6px;
	height: 6px;
	background-color: #0a3bbd;
	border-radius: 100%;
}


/* about */
div.oval{ width:320px; height:100px; 
	border-radius:160px / 50px ;
	background-color:#9FF;
	vertical-align:middle;
	text-align:center;
	font-family:"じゅん 501";
	line-height:100px;
	
	font-size:1.4em;
	font-weight:bold;
	margin:0 0 20px 20px;

	background: radial-gradient(#9FF, #fff);
}

div.oval2{ width:320px; min-height:100px; 
	border-radius:30px ;
	border:2px #1a7dce solid;

	text-align:left;
	
	font-size:1.2em;
	font-weight:bold;
	margin:0 0 20px 10px;

	padding:10px;
}
dl.about{ width:290px; margin:10px 0 0 20px; }
dl.about dt{ width:290px;   }
dl.about dd{ width:270px;   margin:0 0 5px 10px; }

div.oval2 div{ margin:10px 0 0 10px; 
	line-height:2.0em;
}

/* shien */
.shien-addr{ width:340px; margin:30px 0 50px 10px; line-height:1.7em; font-size:1.0em; text-align:left;  }

table.shien{ width:340px; border:2px #00CCCC solid; border-left:none; margin:10px 0 20px 10px;  }
table.shien td{ padding:10px 10px 30px 10px; border-left:2px #00cccc solid; vertical-align:top; 
	line-height:1
	6em; } 
.s-time{ width:50px; text-align:center; }
.s-title{ width:80px; }

/* nyuen */
div.oval3{ width:50px; 
	text-align:center;
	font-family:"じゅん 501";
	
	font-size:1.4em;
	font-weight:bold;
	margin:20px 0 20px 0;
	
	float:left;

}

div.t-nyuen{ float:left; width:250px; padding:10px; margin:10px 0 0 10px; }

table.nyuen{ float:right; width:340px; border:2px #00CCCC solid; border-right:none; 
	border-bottom:none; margin:10px 0 20px 10px;  }
table.nyuen td{ padding:10px; border-right:2px #00cccc solid;  border-bottom:2px #00cccc solid;
	vertical-align:middle; line-height:1.6em; text-align:center; } 

table.hoikuryo{  width:340px; border:2px #00CCCC solid; border-right:none; 
	border-bottom:none; margin:10px 0 20px 10px;  }
table.hoikuryo th{ padding:10px; border-right:2px #fff solid;  
	vertical-align:middle; line-height:1.6em; text-align:center; background-color:#00CCCC; } 
table.hoikuryo th.last{ border-right:none; width:300px; }	
table.hoikuryo td{ padding:10px; border-right:2px #00cccc solid;  border-bottom:2px #00cccc solid;
	vertical-align:middle; line-height:1.6em; text-align:center; } 
table.hoikuryo td.midashi{ background-color:#CFF; } 
table.hoikuryo td.left{ text-align:left; } 
.price{ width:110px; }

table.gyoji{  width:340px; border:2px #00CCCC solid; border-right:none; 
	border-bottom:none; margin:10px 0 20px 10px;  }
table.gyoji th{ padding:10px; border-bottom:2px #fff solid;  
	vertical-align:middle; line-height:1.6em; text-align:center; background-color:#00CCCC; } 
table.gyoji th.last{ border-bottom:none;  }	
table.gyoji td{ padding:10px; border-right:2px #00cccc solid;  border-bottom:2px #00cccc solid;
	vertical-align:middle; line-height:1.6em; text-align:left; } 

.no1{ background:url(nyuen/images/no1_bk.jpg) left bottom no-repeat; padding-bottom:80px; }
.no2{ background:url(nyuen/images/no2_bk.jpg) -50px bottom no-repeat; padding-bottom:80px;}
.no3{ background:url(nyuen/images/no3_bk.jpg) -50px bottom no-repeat; padding-bottom:100px; }

/* policy */
ol.policy{ margin:10px 0 0 30px; width:90%; list-style-position:outside; }
ol.policy li{ line-height:1.7em; margin:0 0 20px 0; }

/* mail */
table.mail{	width:80%; margin:0 auto; border:none; }
table.mail th{ border:none; width:30%; text-align:left; vertical-align:top; padding:5px; font-weight:normal;
	padding-left:15px;
	font-size:100%; font-size:90%;}
table.mail td{ border:none; width:70%; padding:5px; line-height:120%; text-align:left; vertical-align:text-top;
	 font-size:90%; }

table.mail td.conf{ border:none; width:70%; padding:5px; line-height:120%; text-align:left; 
	vertical-align:text-top; border:solid #cccccc 1px; }

.error{ text-align:center; width:100%; margin:30px 0 20px 0;  }
.error_conf{ text-align:center; width:100%; margin:0 0 20px 0;  }



/************************************************************/
.subarea{ width:860px; margin:0 auto; margin-top:30px; margin-bottom:30px;  position:relative;
	 min-height:300px; text-align:left;  }


/* toppage */
/*
.banner{ margin:0 auto; margin-top:30px; width:880px; height:175px; position:relative; z-index:0; }
.ad-btn{ position:absolute; top:124px;  right:18px; z-index:5; }
*/


/* square */
.square:before{
	font-family: FontAwesome;
	content: "\f04d ";
	
	color:#1a7dce;
	
	top:5px;
	left:5px;
	font-size: 1.2em;
	
}

/* ~~ フッター ~~ */
.footer-wrap1{ width:100%; background-color:#def6fd;  display:block; min-height:220px; 
	text-align:center; border-top:5px #00b9ef solid;
 }
.footer1{ width:360px; min-height:220px; position:relative; margin:0 auto;   }

.f-logo{ position:absolute; left:5px; top:5px; z-index:0; }
.f-addr{ position:absolute; font-size:14px; /*left:183px;*/ left:5px; top:70px; z-index:10; 
	text-align:left; color:#6a3906;}
.f-access{ position:absolute; left:5px; top:120px; }
.f-mail{ position:absolute; left:50px; top:120px; }
.f-tel{ position:absolute; left:100px; top:120px; }
.f-myotokuji{ position:absolute; right:20px; bottom:10px; }

.footer1 div.fmenu1{ display:none; }

.fcopy{ width:100%; background-color:#fff; display:block; min-height:15px; text-align:center; padding:3px 0; }
.fcopy div {
	width:360px;
	margin:0 auto;
	
	min-height:15px;
	height:auto; 
	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; 
}

.kana{ ime-mode:active; }
.rome{ ime-mode:disabled; }


/*****************************************************/
p{ margin:10px 0 0 0; }

/******************************************************************/

}