@charset "utf-8";


/*リセットCSS（sanitize.css）の読み込み
---------------------------------------------------------------------------------------------*/
@import url("https://unpkg.com/sanitize.css");

/*Font Awesomeの読み込み
---------------------------------------------------------------------------------------------*/
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css");


/* 全体の設定 
---------------------------------------------------------------------------------------------*/
html,body {
	margin: 0; padding: 0;
	font-size: 15px;	/*基準となるフォントサイズの上書き*/
}
/*-- 画面幅900px以下の追加指定 -------------------------------------*/
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	html, body {
		font-size: 14px;	/*基準となるフォントサイズ */
	}
}

body {
	font-family: "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	/*フォント種類*/
	-webkit-text-size-adjust: none;
	background: #daf7f0;	/*背景色*/
	color: #666;		/*全体の文字色*/
	line-height: 180%;		/*行間*/
	overflow-x: hidden;
	font-size: 15px;	/*基準となるフォントサイズ */

}


/*リセット*/
figure {margin: 0;}
dd {margin: 0;}
nav {margin: 0; padding: 0;}

/*table全般の設定*/
table {border-collapse: collapse;}

/*画像全般の設定*/
img {border: none; max-width: 100%; height: auto; vertical-align: middle;}

/*iframeタグ*/
iframe {width: 100%;}

/*ul,olタグ*/
ul, ol {margin-bottom: 30px;}


/*リンクテキスト全般の設定
---------------------------------------------------------------------------------------------*/
a {
	color: #0000ff;	/*文字色*/
	transition: 0.3s;
	word-break: break-all;
}
a:hover {
	color: #ff3399;
}
a:active  { color: #0000ff; }
a:visited { color: #0000ff; }


/*その他
---------------------------------------------------------------------------------------------*/
.clearfix::after {content: "";display: block;clear: both;}
.fontMM {font-size: 1.4em; line-height: 160%;}




/* PC/SP
---------------------------------------------------------------------------------------------*/
.pcBox{
	display: block;
	margin: 0px; padding: 0px;
}
.spBox{
	display: none;
}
.pc_br{
	display: inline-block;
}
.sp_br{
	display: none;
}
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	.pcBox{
		display: none;
	}
	.spBox{
		display: block;
		margin: 0px; padding: 0px;
	}
	.pc_br{
		display: none;
	}
	.sp_br{
		display: inline-block;
	}
}


/* containerブロック ---------------------------------------------------------*/
#container {
	margin: 0 auto;
	width: 90%;
	max-width: 1400px;	/*最大幅。これ以上広がらない。*/
}
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	#container {
		margin: 0px;
		width: 100%;
		background: #ffffff;
	}
}

/* header（ロゴなどが入った最上段のブロック）
---------------------------------------------------------------------------------------------*/
header {
	background: #aefbe8;	/*背景色*/
	position: relative;
}
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	header {
		position: fixed !important;  /* ヘッダーを固定 */
		top: 0px; left: 0px;
		margin: 0px; padding: 0px;
		width: 100%; 
		z-index: 100; 
	}
}
/* flex子要素 */
#headL {
	margin: 0px; padding: 0px;
	flex-basis: 50%; /* width と同じ */
}
#headR {
	margin: 0px; padding: 0px;
	flex-basis: 50%; /* width と同じ */
}
@media screen and (max-width:800px) {
	#headL {
		margin: 0px; 
		padding: 5px 0px 0px 0px;
		flex-basis: 60%;
		max-width: 360px;
    	height: 70px;
	}
	#headR {
		display: none;
	}
}
@media screen and (max-width:500px) {
	#headL {
		margin: 0px; 
		padding: 5px 0px 0px 0px;
		flex-basis: 60%;
    	height: 60px;
	}
	#headR {
		display: none;
	}
}

#headL h2{
	margin: 5px 0px 0px 15px; 
	padding: 0px 0px 0px 0px; 
	color: #067320;
	font-size: 15px;
	font-weight: normal;
}
/* タイトルロゴ画像 */
#headL h1{
	margin: 0px 0px 5px 10px; 
	padding: 0px 0px 0px 0px; 
}
@media screen and (max-width:800px) {
	#headL h2{
		display: none;
	}
	#headL h1{
		margin: 5px 0px 5px 10px; 
		padding: 0px 0px 0px 0px; 
	}
}

#head_txt{
	padding: 10px 60px 0px 0px; 
	text-align: right;
	color: #067320;
	font-size: 24px;
}
#head_tel{
	padding: 0px 10px 0px 0px; 
	text-align: right;
}


/* ▼▼ スマホ用ハンバーガーメニュー ▼▼
---------------------------------------------------------------------------------------------*/
#menu_btn{ 
    display: none; 
}
@media screen and (max-width:800px) {
	#menu_btn{ 
		display: block;
		position: fixed;
		top: 15px; left: 10px;
		min-width: 40px; 
		z-index: 200; 
	}
	/* ハンバーガーメニュー */
	#nav-drawer {
		position: relative;
	}
	/*チェックボックス等は非表示に*/
	.nav-unshown {
		display: none;
	}
	/*アイコンのスペース*/
	#nav-open {
		display: inline-block; 
		margin: 0px 0px 0px 0px; padding: 5px 5px 5px 5px;
		width: 40px; height: 35px; 
		vertical-align: middle;
		background-color:rgba(255, 255, 255, 0.5);    /* 透過の設定 */
		z-index: 100;
	}
	/*ハンバーガーアイコンをCSSだけで表現*/
	#nav-open span, #nav-open span:before, #nav-open span:after {
		position: absolute; display: block;
		height: 3px; /*線の太さ*/
		width: 27px; /*長さ*/
		border-radius: 3px; background: #067c03;
		content: ''; cursor: pointer;
	}
	#nav-open span:before {
		bottom: -10px;
	}
	#nav-open span:after {
		bottom: -20px;
	}
	/*閉じる用の薄黒カバー*/
	#nav-close {
		display: none; /*はじめは隠しておく*/
		position: fixed; z-index: 100;
		top: 0; /*全体に広がるように*/
		left: 0; width: 100%; height: 100%;
		background: black; opacity: 0;
		transition: .3s ease-in-out;
	}
	/*中身*/
	#nav-content {
		overflow: auto; position: 
		fixed; top: 0; left: 0;
		z-index: 99999;     /* 最前面に */
		width: 90%;        /* 右側に隙間を作る（閉じるカバーを表示） */
		max-width: 330px;  /* 最大幅（調整してください） */
		height: 100%;
		background: #aefbe8;  /* 背景色 */
		transition: .3s ease-in-out;    /* 滑らかに表示 */
		-webkit-transform: translateX(-105%);
		transform: translateX(-105%);   /* 左に隠しておく */ 
	}
	/*チェックが入ったらもろもろ表示*/
	#nav-input:checked ~ #nav-close {
		display: block; /*カバーを表示*/
		opacity: .5;
	}
	
	#nav-input:checked ~ #nav-content {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);  /*中身を表示（右へスライド）*/
		box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}
	
	ul#spmenu{
		list-style: none; width: 100%; margin-top: 20px; 
	}
	ul#spmenu li{
		list-style: none; margin: 0px 0px 0px 0px; padding: 0px; 
		border-bottom: 2px solid #000000; 
	}
	ul#spmenu li a{ 
		display: block; margin: 0px; padding: 12px 0px 10px 15px; 
		background-color: #aefbe8;
		color: #000000; text-decoration:none; 
		font-size: 22px; font-weight: bold;
	}
	ul#spmenu li a:hover{ 
		background-color: #f6ba33;
	}
	ul#spmenu li a.current{ 
		display: block; margin: 0px; padding: 12px 0px 10px 15px;
		background-color: #009900;
		color: #ffffff; text-decoration:none; 
		font-size: 22px; font-weight: bold;
	}
	ul#spmenu li a:hover.current{ 
		background-color: #ff9e65;
	}
	
	.spheadtxt{
		margin: 0px; padding: 0px 15px 10px 20px; 
		color: #000000;
		font-size: 16px; line-height: 180%;
	}
}
/* ▲▲ スマホ用ハンバーガーメニュー ▲▲
---------------------------------------------------------------------------------------------*/


/* nav (header 下のメニュー) 
---------------------------------------------------------------------------------------------*/
#header-menu {
	margin: 0px; padding: 0px;
}
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	#header-menu{
		display: none;
	}
}

#header-menu ul {
	margin: 0px 0px 0px 0px;
	padding: 10px 0px 0px 0px;
	display: flex;	/*flexボックスを使う指定*/
	justify-content: space-between;	/*並びかたの種類の指定*/
	background: #ffffff;
	list-style-type: none;
}
#header-menu ul li.title {
	padding: 0px; 
	text-align: left;
	width: calc(100% - 440px );
}
#header-menu ul li.title h2{
	padding: 5px 0px 0px 100px; 
	text-align: left;
	font-size: 2.6em; line-height: 120%;
	background: url("../images/title_bg.png") no-repeat 30px 0px;
}

#header-menu ul li.menu {
	text-align: center;	/*中身をセンタリング*/
	width: 110px;
}
#header-menu ul li a {
	display: flex; 
	justify-content: center;
	align-items: center;
	text-decoration: none;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background: #bef2e5;
	font-size: 18px; font-weight: bold;
	color: #025516;
}
#header-menu ul li a:hover {
	background: #83a4f3;
}

/* TOP画面　下部固定メニュー */
#footer_menu {
	position: fixed;
	right: 50px; 
	bottom: 0;
	margin: 0px 0px 0px 0px;
	height: 110px;
}
#footer_menu ul {
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	display: flex;	/*flexボックスを使う指定*/
	flex-flow: row nowrap;
	justify-content: flex-end;	/*並びかたの種類の指定*/
	width: 440px;
	list-style-type: none;
}
#footer_menu ul li {
	text-align: center;	/*中身をセンタリング*/
	width: 110px;
}
#footer_menu ul li a {
	display: flex; 
	justify-content: center;
	align-items: center;
	text-decoration: none;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background: #bef2e5;
	font-size: 18px; font-weight: bold;
	color: #025516;
	box-shadow: 3px 3px 3px rgb(0, 36, 14);
}
#footer_menu ul li a:hover {
	background: #83a4f3;
}
@media screen and (max-width:800px) {
	#footer_menu {
		display: none;
	}
}

/*フッターメニュー設定
---------------------------------------------------------------------------------------------*/
footer {
	font-size: 1.0em;		/*文字サイズ*/
	background: #aefbe8;	/*背景色*/
	color: #414141;			/*文字色*/
	text-align: left;		/*内容をセンタリング*/
	padding: 10px 40px 10px 40px;			/*ボックス内の余白*/
}
footer .foot_copy {
	text-align: left;
}
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	footer .foot_copy {
		text-align: center;
	}
}

/* mainブロック設定 
---------------------------------------------------------------------------------------------*/
section {
	margin: 0px;
	padding: 0px 0px 20px 0px;
}
/* TOP画面のみ背景画像 */
.main_top{
	margin: 0px;
	padding: 20px 0px 20px 0px;
	/*background-color: #aefbe8;*/
	background: #aefbe8 url("../images/top_image.jpg") no-repeat 0px 0px;
	width : 100%;
	height: 900px;
	text-align: left;
}
@media screen and (max-width:800px) {
	.main_top{
		margin: 0px;
		padding: 80px 0px 10px 0px;
		width : 100%; height: auto;
		text-align: left;
		background: url("../images/top_image.jpg") no-repeat 0px 0px;
		background-attachment: fixed; /* スクロール時に固定 */
		background-size: cover;
		background-position: center;
	}
}
/* TOP画面以外の設定 */
.main_page {
	margin: 0px;
	padding: 10px 30px 20px 30px;
	background: #ffffff;
	width : 100%;
}
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	.main_page {
		margin: 0px 0px 0px 0px;
		padding: 80px 10px 20px 10px;
		background: #ffffff;
		width : 100%;
	}
}


/* Flexboxの設定
---------------------------------------------------------------------------------------------*/
/* 親要素 */
.flexBox_head {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;  /* 最初と最後の子要素を両端に配置し、残りの要素は均等に間隔 */
}

.flexBox_main {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-around; /* 両端の子要素も含め、均等に間隔 */
}

/* 子要素 */
.flex_item_half {
	margin: 0px; padding: 0px;
	flex-basis: 50%; /* width と同じ */
}
@media screen and (max-width:800px) {
	.flex_item_half {
		margin: 0px; padding: 0px;
		flex-basis: 100%; /* width と同じ */
	}
}
.flex_item_three {
	flex-basis: 33%;
}
.flex_item_90 {
	margin: 0px; padding: 0px;
	flex-basis: 90%; /* width と同じ */
}
.flex_item_70 {
	margin: 0px; padding: 0px;
	flex-basis: 70%; /* width と同じ */
}
.flex_item_20 {
	margin: 0px; padding: 0px;
	flex-basis: 20%; /* width と同じ */
}

.flex_item_60 {
	margin: 0px; padding: 0px;
	flex-basis: 60%; /* width と同じ */
}
.flex_item_40 {
	margin: 0px; padding: 0px;
	flex-basis: 40%; /* width と同じ */
}
@media screen and (max-width:800px) {
	.flex_item_60 {
		margin: 0px; padding: 0px;
		flex-basis: 100%; /* width と同じ */
	}
	.flex_item_40 {
		margin: 0px; padding: 0px;
		flex-basis: 100%; /* width と同じ */
	}
}
.flex_item_30 {
	margin: 0px; padding: 0px;
	flex-basis: 30%; /* width と同じ */
}

.flex_about_60 {
	margin: 0px; padding: 0px;
	flex-basis: 60%; /* width と同じ */
}
.flex_about_30 {
	margin: 0px; padding: 0px;
	flex-basis: 30%; /* width と同じ */
}
@media screen and (max-width:800px) {
	.flex_about_60 {
		margin: 0px; padding: 0px;
		flex-basis: 90%;
		font-size: 1.2em;
		line-height: 160%;
	}
	.flex_about_30 {
		margin: 0px; 
		padding: 0px 0px 10px 0px;
		flex-basis: 90%;
	}
}

.flex_info_txt {
	margin: 0px; padding: 0px;
	flex-basis: 60%; 
	font-size: 1.2em;
}
.flex_info_img {
	margin: 0px; padding: 0px;
	flex-basis: 20%;
}
@media screen and (max-width:800px) {
	.flex_info_txt {
		margin: 0px; padding: 0px;
		flex-basis: 90%; 
		font-size: 1.2em;
	}
	.flex_info_img {
		margin: 0px; padding: 0px;
		flex-basis: 60%;
	}
}

.flex_aisatu_txt {
	margin: 0px; padding: 0px;
	flex-basis: 70%;
}
.flex_aisatu_img {
	margin: 0px; padding: 0px;
	flex-basis: 20%;
}
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	.flex_aisatu_txt {
		margin: 0px; padding: 0px;
		flex-basis: 90%;
	}
	.flex_aisatu_img {
		margin: 0px; padding: 0px;
		flex-basis: 40%;
	}
}

/* 見出しの設定
---------------------------------------------------------------------------------------------*/
h2#news {
	margin: 0px 0px 10px 0px;
	position: relative; 
	padding: 0px 0px 0px 10px;
	font-size: 1.4em; line-height: 120%;
	text-align: left; color: #067320; 
	border-bottom: #067320 solid 2px;
}

h2.topmidashi {
	margin: 0px;
	padding: 0px 0px 0px 0px;
	position: relative; 
	font-size: 1.4em; line-height: 120%;
	text-align: left; color: #067320; 
}

h2.topmidashi_shadow {
	margin: 0px;
	padding: 0px 0px 0px 0px;
	position: relative; 
	font-size: 1.4em; line-height: 120%;
	text-align: left; color: #067320; 
	text-shadow: 1px 1px 2px #ffffff;
}

h3.type1 {
	padding: 0.5em 2.0em 0.5em 0.5em;
	display: inline-block;
	line-height: 1.3;
	color: #505050;
	background: #bef2e5;
	vertical-align: middle;
	border-radius: 25px 0px 0px 25px; /*左側の角を丸く*/
}
h3.type1:before {
	content: '●';
	color: white;
	margin-right: 8px;
}

h3.type2 {
	padding: 0.5em 1em;
	margin-left: 5px;
	margin-right: 5px;
	border-right: 3px dashed #025516;
	border-bottom: 3px dashed #025516;
	outline: 3px solid #025516;
	outline-offset: 5px;
	font-size: 1.4em;
	font-weight: bold;
	color: #025516;
}

img{
    /* 黒背景だとして文字を白色にする場合 */
    color: #ffffff;
}




/* 各BOX 設定
---------------------------------------------------------------------------------------------*/
/* TOP　お知らせ表示枠 */
.box_white {
	margin: 0px 0px 20px 30px;
	padding: 10px 20px 10px 20px;
    background-color: #ffffff;
    /*width: 560px;*/
	width: 90%;
	text-align: left;
}
@media screen and (max-width:800px) {
	.box_white {
		margin: 0px auto 15px auto;
		padding: 10px 20px 10px 20px;
		background-color: #ffffff;
		width: 90%;
		text-align: left;
	}
}
.newsBox{
	margin: 0px; padding: 0px 10px 0px 10px;
	width: 100%;
	font-size: 16px;
	line-height: 160%;
}

.box_video {
	margin: 0px 0px 0px 0px;
	padding: 10px 50px 10px 50px;
	text-align: center;
}
@media screen and (max-width:800px) {
	.box_video {
		margin: 0px 0px 0px 0px;
		padding: 10px 15px 20px 15px;
		text-align: center;
	}
}

/* TOP　診療時間枠 */
.box_white2 {
	margin: 0px 0px 0px 30px;
	padding: 10px 10px 10px 10px;
    background-color: #ffffff;
    width: 700px;
	text-align: left;
}
@media screen and (max-width:800px) {
	.box_white2 {
		margin: 0px auto 15px auto;
		padding: 15px 10px 15px 10px;
		background-color: #ffffff;
		width: 90%;
		text-align: left;
	}
}

/* TOP　下部文字枠 */
.box_white3 {
	margin: 0px 0px 20px 30px;
	padding: 10px 10px 10px 10px;
	width: 650px;
	/*width: 95%;*/
	text-align: left;
}
.box_white3 p{
	margin: 0px;
	padding: 5px 0px 15px 20px;
	text-align: left;
	font-size: 16px;
	line-height: 160%;
	color: #067320;
	font-weight: bold;
	text-shadow: 1px 1px 2px #ffffff;
}
@media screen and (max-width:800px) {
	.box_white3 {
		margin: 0px 0px 0px 0px;
		padding: 10px 10px 10px 10px;
		width: 90%;
		text-align: left;
	}
	.box_white3 p{
		margin: 0px;
		padding: 5px 0px 15px 20px;
		text-align: left;
		font-size: 18px;
		line-height: 160%;
		color: #067320;
		font-weight: bold;
		text-shadow: 1px 1px 2px #ffffff;
	}
}


/* テキストBox枠 */
.text_box {
	margin: 0 auto 0 auto;
    padding: 10px 10px 30px 10px;
    width: 95%;
	font-size: 1.2em;
}

/* 画像表示枠 */
.img_box {
	margin: 0 auto 0 auto;
    padding: 0px 0px 10px 0px;
    width: 90%;
	text-align: center;
}

/* 地図表示Box枠 */
.GmapBox {
	margin: 0 auto 0 auto;
    padding: 0px 0px 10px 0px;
    width: 90%;
}
.GmapBox iframe {
    width: 100%; height: 450px;
}





/* table 設定
---------------------------------------------------------------------------------------------*/
table.topsinryo {
	margin: 0px 0px 0px 0px; 
	border-collapse: collapse; 
    border: 1px solid #808080; background-color: #ffffff; 
    width: 100%;
}
table.topsinryo th.w1 {
	padding: 2px 0px 2px 5px; 
	text-align: center; vertical-align: middle; 
	border: 1px solid #808080;
	font-weight: bold; background-color: #efece5; 
	width: 20%;
}
table.topsinryo th.w2 {
	padding: 2px 0px 2px 5px; 
	text-align: center; vertical-align: middle; 
	border: 1px solid #808080;
	font-weight: bold; background-color: #efece5; 
	width: 10%;
}
table.topsinryo th.w2sat {
	padding: 2px 0px 2px 5px; 
	text-align: center; vertical-align: middle; 
	border: 1px solid #808080;
	font-weight: bold; background-color: #efece5; 
	width: 10%;
	color: #1e90ff;
}
table.topsinryo th.w2sun {
	padding: 2px 0px 2px 5px; 
	text-align: center; vertical-align: middle; 
	border: 1px solid #808080;
	font-weight: bold; background-color: #efece5; 
	width: 10%;
	color: #ff0000;
}
table.topsinryo td.title{
	padding: 2px 0px 2px 5px; text-align: center; 
	vertical-align: middle; 
	border: 1px solid #808080; 
	background-color: #efece5;
}
table.topsinryo td.base{
	padding: 2px 0px 2px 5px; text-align: center; 
	vertical-align: middle; 
	border: 1px solid #808080; 
}
table.topsinryo td.sat{
	padding: 2px 0px 2px 5px; text-align: center; 
	vertical-align: middle; 
	border: 1px solid #808080; 
	color: #1e90ff;
}
table.topsinryo td.sun{
	padding: 2px 0px 2px 5px; text-align: center; 
	vertical-align: middle; 
	border: 1px solid #808080; 
	color: #ff0000;
}
@media screen and (max-width:800px) {
	table.topsinryo {
		margin: 0px 0px 0px 0px; 
		border-collapse: collapse; 
		border: 1px solid #808080; background-color: #ffffff; 
		width: 100%;
	}
	table.topsinryo th.w1 {
		padding: 2px 0px 2px 5px; 
		text-align: center; vertical-align: middle; 
		border: 1px solid #808080;
		font-weight: bold; background-color: #efece5; 
		width: 25%;
	}
	table.topsinryo td.title{
		padding: 2px 0px 2px 5px; text-align: center; 
		vertical-align: middle; 
		border: 1px solid #808080; 
		background-color: #efece5;
		width: 25%;
	}
	table.topsinryo th.w2sat {
		padding: 2px 0px 2px 5px; 
		text-align: center; vertical-align: middle; 
		border: 1px solid #808080;
		font-weight: bold; background-color: #efece5; 
		width: 25%;
		color: #1e90ff;
	}
	table.topsinryo th.w2sun {
		padding: 2px 0px 2px 5px; 
		text-align: center; vertical-align: middle; 
		border: 1px solid #808080;
		font-weight: bold; background-color: #efece5; 
		width: 25%;
		color: #ff0000;
	}
}



table.noline {
    margin: 0 auto 20px auto; border-collapse: collapse; 
    width: 90%;
}
table.noline td.col2_type1_l{
    padding: 2px 0px 2px 5px; 
	text-align: right; vertical-align: top; 
	width: 130px;
	font-size: 1.2em;
}
table.noline td.col2_type1_r{
    padding: 2px 0px 2px 5px; 
	text-align: left; vertical-align: top; 
	width: calc(100% - 130px);
	font-size: 1.2em;
}
/* （SP用） */
@media screen and (max-width:800px) {
	/* 画面幅800px未満の追加指定 */
	table.noline {
		margin: 0 auto 20px auto; border-collapse: collapse; 
		width: 95%;
	}
	table.noline td.col2_type1_l{
		padding: 2px 0px 2px 5px; 
		text-align: right; vertical-align: top; 
		width: 90px;
		font-size: 1.2em;
	}
	table.noline td.col2_type1_r{
		padding: 2px 0px 2px 5px; 
		text-align: left; vertical-align: top; 
		width: calc(100% - 90px);
		font-size: 1.2em;
	}
}


/*btnの設定  ★これは未使用
---------------------------------------------------------------------------------------------*/
p.btn {margin: 0;}

/*ボタンを囲むブロック*/
.btn {
	text-align: center;	/*内容をセンタリング*/
}

/*ボタン*/
.btn a,
.btn input {
	text-decoration: none;border: none;
	display: block;
	font-size: 1em;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.2);	/*ボックスの影。右へ、下へ、ぼかし幅の順。0,0,0は黒の事で0.2は色が20%出た状態。*/
	background: #679ff2;	/*背景色*/
	letter-spacing: 0.1em;	/*文字間隔を少し広くする指定*/
	color: #fff;			/*文字色*/
	transition: 0.3s;		/*hoverまでにかける時間。0.3秒。*/
	padding: 0.7em 1em;		/*上下、左右へのボタン内の余白*/
	margin-top: 2em;		/*ボタンの上に１文字分のスペースを空ける*/
}

/*ボタンのマウスオン時*/
.btn a:hover,
.btn input:hover {
	cursor: pointer;			/*inputタグを使う場合に「手」のマークになるように。リンクと同じ表示になるようにという事です。*/
	opacity: 1;					/*一番上のリンク設定でhoverにopacityを指定しているので、適用されないようにする。*/
	filter: brightness(1.2);	/*少しだけ明るくする。*/
	transform: scale(1.02);		/*実寸の102%に拡大*/
}

/*ボタン内にiタグを使った場合*/
.btn i {
	margin-left: 15px;		/*テキストとの間に空ける余白*/
	opacity: 0.5;			/*透明度。色が50%でた状態。*/
	transform: scale(1.4);	/*サイズを1.4倍にする*/
}




