@charset "UTF-8";


/*---------------------------- PC向けのスタイル ----------------------------*/
@media print, screen and (min-width: 680px) {


/*---------- ページ全体の指定 ----------*/

body {
  width: 100%;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "MS P ゴシック", "MS P Gothic", sans-Serif;
  margin: 0;
  padding: 0;
  font-size: 16px;
  color: #333333;
  background-color: #ffffff;
  -webkit-text-size-adjust: none;
}

.img_a {
  display: block;
}

.img_b {
  display: none;
}

.main ul {
list-style-type: disc;
}

.main ul li {
  /*ulの中のliの文字色を変える*/
  color: #333;
  margin:0 0 0 30px;
}
/*---------- メイン ----------*/

#main {
  width: 100%;
  overflow: hidden;
  margin: 0 auto 0 auto;
  padding: 0;
  text-align: center;
  background-image: url(../img/back.png);
}


/*---------- ヘッダー ----------*/

#header {
  width: 100%;
  margin: 0 auto 0 auto;
  border-top: solid 2px #a5967a;
}

#header h1 {
  margin: 0 auto 0 auto;
  width: 1024px;
  padding: 2px 0 0 5px;
  font-weight: normal;
  text-align: left;
  font-size: 10px;
  color: #9d896c;
}


/*---------- ヘッダー内 ----------*/

#header #header_inner {
  width: 1024px;
  height: 130px;  /*-- 高さ --*/
  padding: 4px 0 4px 0;  /*-- 余白 --*/
  margin: 0 auto 0 auto;
}


/*----- 左 logo -----*/

#h_logo {
  padding: 0;
  text-align: left;
  font-size: 14px;
  color: #444444;
  line-height: 1.5;
  text-decoration: none;
  float: left;
}

#h_logo h2 {
  margin: 0;
  padding: 24px 0 0 0px;  /*-- logo 位置 --*/
  text-align: left;
  font-size: 20px;
  color: #444444;
  letter-spacing: 0.05em;
}

#h_logo a {
  font-size: 22px;
  color: #666666;
  text-decoration: none;
}

#h_logo a:hover {
  font-size: 22px;
  color: #888888;
  text-decoration: none;
}


/*----- 右 info -----*/

#h_info{
  margin: 0;
  padding: 8px 0 0 0;  /*-- info画像 位置 --*/
  text-align: right;
  font-size: 16px;
  color: #555555;
  line-height: 1.8;
  text-decoration: none;
  float: right;
}

#h_info p{
  margin: 0;
  padding: 3px;
  text-align: left;
  font-size: 14px;
  color: #444444;
  letter-spacing: 0.05em;
}

#h_info a{
  font-size: 13px;
  color: #333333;
  text-decoration: none;
}

#h_info a:hover{
  font-size: 13px;
  color: #666666;
  text-decoration: none;
}

span.tel {
  font-size: 1.42em;
  color: #c9171e;
  line-height: 1.6;
  font-weight: bold;
}


/*---------- ヘッダーメニュー ----------*/

#header-menu {
  clear: both;
  width: 100%;
  margin: 6px 0 0 0;
  padding: 0;
  height: 56px;
  text-align: left;
}

#header-menu ul {
  width: 1024px;
  text-align: left;
  margin: 0 auto 0 auto;
  padding: 0;
}

#header-menu li {
  display: inline;
  list-style-type: none;
  float: left;
  color: #ffffff;
}

#header-menu li a {
  font-size: 13px;
  color: #765c47;
  text-align: center;
  display: block;
  line-height: 1.3;
  letter-spacing: 0.05em;
  border-left: solid 1px #d6c6af;
  text-decoration: none;
  margin-top: 8px;
  padding: 6px 38px 2px 38px;
}

#header-menu li a:hover {
  color: #765c47;
  background-color: #f7f0df;
}

#header-menu li.home a {
  padding: 6px 38px 2px 38px;
  border-left: none;
}

#header-menu span.sub {
  color: #b29164;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
  height: 0; 
  visibility: hidden;
}


/*---------- SP電話ボタン ----------*/

.phone {
  display: none;
}


/*---------- メイン画像 ----------*/

#header-img {
  width: 100%;
  margin: 12px 0 12px 0;
  text-align: center;
}

.main_photo {
  display: relative;
  margin: 0 auto 0 auto;
  width:1000px;
}

.logo-innertext {
    position:relative;
    top: 155px;
    left: 20px;
    width:450px;
    height:0px;
    color:#444;
    font-size: 1.5em;
    font-weight: normal;
    animation-name: fadein;
    animation-duration: 4s;
    animation-iteration-count: 1;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
/*---------- コンテンツ ----------*/
#top-container {
  width: 1024px;
  margin: 0 auto 0 auto;
  overflow: hidden;
  padding: 6px 0 10px 0;
}

#container {
  width: 900px;
  margin: 0 auto 0 auto;
  overflow: hidden;
  padding: 6px 0 0 0;
}


/*---------- メインコンテンツ ----------*/
#top-contents {
  float: right;
  margin: 0;
  padding: 0;
  font-size: 16px;
  width: 1024px;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.7;
}

#top-contents .main {
  display:flex;margin:0 0 30px 0;
}

#top-contents .main .main-1 {
  width:500px;
  margin-right: auto;
}

#top-contents .infomation {
  width:500px;
}

#contents {
  float: right;
  margin: 0;
  padding: 0;
  font-size: 16px;
  width: 650px;
  letter-spacing: 0.05em;
  text-align: left;
  line-height: 1.7;
}

#contents #pannavi {
  margin: 0 0 6px 0;
  padding: 0 0 8px 0;
  font-size: 15px;
}

#contents #pannavi a {
  font-size: 15px;
}

#top-contents h2 {
  height: auto;
  margin: 0 0 5px 0;
  padding: 5px 0 0 0;
  font-size: 24px;
  color: #4e5558;
  text-align: center;
}

#news {
  height: 220px;
  overflow: auto;
  line-height: 1.8;
  padding: 8px 6px 7px 6px;
  margin: 2px 0 7px 0;
  border: solid 1px #cccccc;
  background-color: #ffffff;
}

.flowbox {
  display:flex;
  width:648px;
  height:60px;
  margin:0 0 0 0;
  border:1px solid #ddd;
}

.flowbox-l {
  display:flex;width:325px;background:#dde4af;height:60px;
}

.flowbox-r {
  width:325px;background:#fafafa;height:60px;
}

.flowbox-r-item-1 {
  margin:16px 0 0 10px;
}
.flowbox-r-item-2 {
  margin:6px 0 0 10px;
}

.flowbox-l-num {
  color:#fff;font-size:24px;text-shadow: 1px 2px 3px #808080;margin:14px 0 0 30px;
}

.flowbox-l-item {
  font-weight:bold;margin:20px 0 0 30px;
}

.flowbox-l-7 {
  width:200px;
}

.page2-merit-label {
  line-height:60px;
  width:120px;
  font-weight:bold;
  font-size:1.1em;
  letter-spacing: 3px;
}

.page2-merit-label-2 {
  line-height:60px;
  width:120px;
  font-weight:bold;
  font-size:1.1em;
  letter-spacing: 3px;
  margin:8px 0 0 0;
}

.page2-medicalcheck {
  width:300px;
}

.page2-medicalcheck-item {
  font-size:1.2em;
}

table.ssl-tbl {
	width: 620px;
	margin: 0px 10px 11px 10px;
	font-size: 1em;
	color: #353535;
	line-height: 18px;
	border-top-width: 1px;
	border-right-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-top-color: #CCCCCC;
	border-right-color: #CCCCCC;
}
table.ssl-tbl th {
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 13px;
	text-align: left;
	border-left: 1px solid #E8C85C;
	border-bottom: 1px solid #E8C85C;
	background: #FFFCB9;
}
table.ssl-tbl th .red {
	font-weight: normal;
}

table.ssl-tbl td {
	padding: 5px 11px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #CCCCCC;
	border-left-color: #CCCCCC;
}

#contents h1 {

  height: 43px;
  margin: 0 0 20px 0;
  padding: 12px 0 0 40px;
  font-size: 20px;
  color: #54351f;
  background-image: url(../img/titlebar.gif);
  background-repeat: no-repeat;
}



#contents h2 {
  height: 43px;
  margin: 0 0 10px 0;
  padding: 14px 0 0 40px;
  font-size: 18px;
  color: #54351f;
  background-image: url(../img/titlebar.gif);
  background-repeat: no-repeat;
}

#contents h2.page_title {
  margin: 0 0 18px 0;
  padding: 18px 0 4px 30px !important;
  line-height: 1.7;
  font-size: 20px;
  color: #581201;
  border: none;
  text-align: left;
  background-image: url(../img/page_title.gif);
  background-repeat: no-repeat;
}

#contents h2.txt {
  height: auto;
  margin: 0 0 7px 0;
  padding: 0;
  border: none;
  font-size: 16px;
  color: #54351f;
  background: none;
}

#contents h3 {
  margin: 12px 3px 10px 3px;
  padding: 15px 10px 10px 18px;
  line-height: 1.4;
  font-size: 17px;
  color: #54351f;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #966934;
  border-left: solid 5px #966934;
  background-color: #f9f2d5;
}

#contents h3.beta {
  margin: 12px 2px 10px 2px;
  padding: 14px 10px 12px 16px;
  line-height: 1.4;
  font-size: 18px;
  color: #fffffc;
  border: none;
  background-image: url(../img/h3_beta.gif);
  background-repeat: no-repeat;
}

#contents h3.point {
  margin: 10px 0 10px 0;
  padding: 10px 10px 8px 10px;
  line-height: 1.4;
  font-size: 18px;
  color: #882200;
  border-top: solid 1px #999999;
  border-right: solid 1px #bbbbbb;
  border-bottom: solid 4px #663300;
  border-left: solid 1px #bbbbbb;
  background-image: url(../img/h3_point.gif);
  background-repeat: repeat-x;
}

#contents h3.gold {
  height: 41px;
  margin: 12px 2px 10px 2px;
  padding: 14px 10px 0 18px;
  line-height: 170%;
  font-size: 19px;
  text-align: left;
  color: #662200;
  border: none;
  background-image: url(../img/h3_gold.gif);
  background-repeat: no-repeat;
}

#contents h3.gold02 {
  height: 71px;
  margin: 12px 2px 10px 2px;
  padding: 14px 2px 0 18px;
  line-height: 170%;
  font-size: 18px;
  text-align: left;
  color: #662200;
  border: none;
  background-image: url(../img/h3_gold02.gif);
  background-repeat: no-repeat;
}

#contents h3.gray {
  height: 41px;
  margin: 12px 2px 10px 2px;
  padding: 14px 10px 0 18px;
  line-height: 170%;
  font-size: 19px;
  text-align: left;
  color: #662200;
  border: none;
  background-image: url(../img/h3_gray.gif);
  background-repeat: no-repeat;
}

#contents h3.gray02 {
  height: 71px;
  margin: 12px 2px 10px 2px;
  padding: 14px 2px 0 18px;
  line-height: 170%;
  font-size: 18px;
  text-align: left;
  color: #662200;
  border: none;
  background-image: url(../img/h3_gray02.gif);
  background-repeat: no-repeat;
}

#contents p {
  margin: 15px 0 15px 0;
  padding: 0 2px 0 2px;
  line-height: 1.7;
  font-size: 16px;
}




.mobilehealthcareLink {
  background:#fff;
  color:#1b8b3d;
  background-color: #fff;
  background-image: -webkit-linear-gradient(top, #fff, #E8E8E8);
  background-image: linear-gradient(to bottom, #fff,  #E8E8E8);
  display:flex;
  width:647px;
  height:182px;
  margin:28px 3px 10px 0;
  cursor:pointer;
  border:1px solid #ccc;
  border-radius:3px;
}

.mobilehealthcareLink .label {
    position: absolute;
    top: 10px;
    left: 230px;
    color: #4e5558;
    font-size:1.4em;
    font-weight: bold;
}

.mobilehealthcareLink:hover {
  -webkit-box-shadow: 0 6px 6px -6px #777;
  -moz-box-shadow: 0 6px 6px -6px #777;
  box-shadow: 0 0 8px gray;
  -webkit-transition: all .4s;
  transition: all .4s;
}

.clinicLink {
  background:#fff;
  color:#1b8b3d;
  background-color: #fff;
  background-image: -webkit-linear-gradient(top, #fff, #fcfcfc);
  background-image: linear-gradient(to bottom, #fff,  #fcfcfc);
  display:flex;
  width:646px;
  height:170px;
  margin:0 3px 10px 0;
  cursor:pointer;
  border:1px solid #ccc;
  border-radius:5px;
}

.clinicLink .building {
  width:100px;
  height:105px;
  margin:30px 40px 0 20px;
}

.clinicLink:hover {
  -webkit-box-shadow: 0 6px 6px -6px #777;
  -moz-box-shadow: 0 6px 6px -6px #777;
  box-shadow: 0 0 8px gray;
  -webkit-transition: all .4s;
  transition: all .4s;
}



/*---------- ３コンテンツ・ボックス ----------*/

.box {
  width: 100%;
  margin: 0 auto 0 auto;
}

.box:after {
  content: "";
  display: block;
  clear: both;
}

.box1 {
  float: left;
  width: 31.4%;
  padding: 4px;
  margin: 0 4px 0 4px;
}

.box2 {
  float: left;
  width: 31.4%;
  padding: 4px;
  margin: 0 4px 0 4px;
}

.box3 {
  float: left;
  width: 31.4%;
  padding: 4px;
  margin: 0 4px 0 4px;
}


/*---------- 画像の回り込み ----------*/

img.picture {
  margin: 0 10px 10px 0;
  float: left;
}

img.picture_r {
  margin: 0 5px 10px 10px;
  float: right;
}


/*---------- 表（テーブル） ----------*/

table.t01 {
  width: 530px;
  padding: 4px;
  border: solid 1px #cccccc;
  border-collapse: collapse;
}

td.t01 {
  padding: 10px;
  border-collapse: collapse;
}

td.head {
  padding: 9px 6px 6px 15px;
  border: solid 1px #cccccc;
  border-collapse: collapse;
  background-image: url(../img/main_block_bg.gif);
}

td.t00 {
  padding: 4px;
}


table.table_line {
  border-collapse: collapse;
  border: solid 1px #999999;
  width: 100%;
}

td.table_head {
  border-collapse: collapse;
  border: solid 1px #999999;
  padding: 12px 14px 8px 14px;
  background-color: #fff8e3;
  width: 100px;
}

td.table_left {
  border-collapse: collapse;
  border: solid 1px #999999;
  padding: 12px 14px 8px 14px;
  width: auto;
  background-color: #fff8e3;
}

td.table_right {
  border-collapse: collapse;
  border: solid 1px #999999;
  padding: 12px 14px 8px 14px;
  width: 680px;
  background-color: #ffffff;
}

td.table_line {
  border-collapse: collapse;
  border: solid 1px #999999;
  padding: 12px 14px 8px 14px;
  width: auto;
}







/*---------- サイドエリア ----------*/

#menu {
  float: left;
  margin: 0 0 15px 0;
  padding: 0;
  width: 230px;
  text-align: left;
  letter-spacing: 0.05em;

}

.menulist {
  margin: 0 0 28px 0;
  padding: 5px 0 0 0;
  width: 220px;
  text-align: left;
}

.menulist h2 {
  height: 27px;
  margin: 0;
  padding: 12px 0 5px 14px;
  font-size: 15px;
  color: #fffffc;
  background-image: url(../img/sidebar.gif);
  background-repeat: no-repeat;
}

.menulist h3 {
  height: 27px;
  margin: 0;
  padding: 12px 0 5px 14px;
  font-size: 15px;
  color: #fffffc;
  background-image: url(../img/sidebar.gif);
  background-repeat: no-repeat;
}

.menulist ul {
  margin: 0;
  padding: 0;
}

.menulist li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.menulist li a{
  color: #54351f;
  display: block;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  padding: 11px 4px 6px 26px;
  font-size: 14px;
  line-height: 1.9;
  text-decoration: none;
  background-image: url(../img/side_menu_bg.gif);
  background-repeat: no-repeat;
}

.menulist li a:hover{
  color: #745a45;
  background-image: url(../img/side_menu_bg_hover.gif);
  background-repeat: no-repeat;
}

.menu_free {
  margin: 0 0 28px 0;
  padding: 0;
  width: 220px;
  text-align: left;
  background-image: url(../img/menu_back.gif);
}

.menu_free h2 {
  height: 27px;
  margin: 0;
  padding: 12px 0 5px 14px;
  font-size: 15px;
  color: #fffffc;
  background-image: url(../img/sidebar.gif);
  background-repeat: no-repeat;
}

.menu_free h3 {
  height: 27px;
  margin: 0;
  padding: 12px 0 5px 14px;
  font-size: 15px;
  color: #fffffc;
  background-image: url(../img/sidebar.gif);
  background-repeat: no-repeat;
}

.menu_free p{
  margin: 0;
  padding: 8px 8px 14px 8px;
  font-size: 13px;
  line-height: 1.8;
}

.menu_top {
  margin: 0 0 5px 0;
  padding: 0;
  text-align: left;
}

.menu_top a{
  color: #993300;
  padding: 6px 0 6px 0;
  line-height: 1.8;
}

.menu_top a:hover{
  color: #666666;
}

.menu_top p{
  margin: 0;
  padding: 0;
  line-height: 1.8;
}

.meditrina_btn {
  margin: 0 0 0 0;
  padding: 0;
  width: 220px;
  text-align: left;
}
.meditrina_btn a{
  margin: 0 0 0 0;
  color: #583822;
  display: block;
  border: solid 1px #dddddd;
  padding: 8px 4px 4px 30px;
  font-size: 14px;
  line-height: 1.9;
  text-decoration: none;
  background-image: url(../img/side_menu_btn_bg.gif);
  background-repeat: no-repeat;
}
.meditrina_btn a:hover{
  color: #765c47;
  background-image: url(../img/side_menu_btn_bg_hover.gif);
  background-repeat: no-repeat;
}
.meditrinabox {
  margin: 5px 15px 0 5px;
  width:140px;
  height:200px;
  background:#eee;
  border: 1px solid #ddd;
  cursor:pointer;
}

.meditrinabox:hover {
  filter: drop-shadow(2px 2px 2px rgba(0,0,0,0.6));
  -webkit-transition: all .4s;
  transition: all .4s;
}

.nomura_btn {
  margin: 20px 0 0 0;
  width: 220px;

}


.nomura_btn:hover{
  opacity: 0.8;
}


.menu_btn {
  margin: 0 0 14px 0;
  padding: 0;
  width: 220px;
  text-align: left;
}

.menu_btn a{
  margin: 0 0 8px 0;
  color: #583822;
  display: block;
  border: solid 1px #dddddd;
  padding: 8px 4px 4px 30px;
  font-size: 14px;
  line-height: 1.9;
  text-decoration: none;
  background-image: url(../img/side_menu_btn_bg.gif);
  background-repeat: no-repeat;
}

.menu_btn a:hover{
  color: #765c47;
  background-image: url(../img/side_menu_btn_bg_hover.gif);
  background-repeat: no-repeat;
}


.menu_btn_under {
  margin: 0 0 10px 0;
  padding: 0;
  width: 220px;
  text-align: left;
}

.menu_btn_under a{
  margin: 0 0 8px 0;
  color: #583822;
  display: block;
  border: solid 1px #dddddd;
  padding: 10px 4px 6px 12px;
  font-size: 13px;
  line-height: 1.9;
  text-decoration: none;
  background-image: url(../img/side_menu_btn_under_bg.gif);
  background-repeat: no-repeat;
 }

.menu_btn_under a:hover{
  color: #765c47;
}


/*---------- サイドエリア・トップに戻る ----------*/

.menu_back {
  display: none;
}





/*---------- フッター ----------*/

#footer {
  clear: both;
  width: 100%;
  margin: 0;
  padding: 30px 0 30px 0;
  text-align: center;
  font-size: 14px;
  color: #333333;
  line-height: 1.8;
  background-image: url(../img/head_img_bg.png);
}

#footer a {
  color: #333333;
  font-size: 14px;
  text-decoration: none;
}

#footer a:hover {
  color: #555555;
  text-decoration: none;
}

}




/*---------------------------- タブレット向けのスタイル ----------------------------*/
@media print, screen and (min-width:680px) and (max-width:920px) {


/*---------- メイン ----------*/

#main {
  min-width: 1024px;
}

}




/*---------------------------- 共通部分（コンテンツ） ----------------------------*/


/*---------- 見出しタイトル装飾 ----------*/

#contents h3.white {
  margin: 20px 4px 20px 4px;
  padding: 10px 0 6px 0;
  line-height: 1.6;
  color: #792b04;
  border-top: none;
  border-right: none;
  border-bottom: solid 2px #aaaaaa;
  border-left: none;
  background-color: #ffffff;
  background-image: none;
}

#contents h4.memo {
  margin: 12px 0 10px 0;
  padding: 15px 10px 11px 16px;
  line-height: 1.4;
  color: #df5f08;
  border-bottom: solid 1px #df5f08;
  border-left: solid 5px #df5f08;
  background-color: #fbe8d3;
}

#contents h4.memo_w {
  margin: 12px 0 10px 0;
  padding: 16px 10px 10px 16px;
  line-height: 1.4;
  color: #54351f;
  background-color: #fff8ee;
}

#contents h4.border {
  height: 34px;
  margin: 10px 0 15px 0;
  padding: 10px 10px 0 4px;
  line-height: 1.4;
  color: #e85922;
  border-top: none;
  border-right: none;
  border-bottom: solid 3px #966934;
  border-left: none;
  background-color: #ffffff;
}


/*---------- メインコンテンツ ----------*/

img.line {
  margin: 0 8px 4px 0;
  vertical-align: middle;
}

img.head_photo {
  margin: 0 0 16px 0;
}

hr.line {
  margin: 0 0 10px 0;
  padding: 2px 0 6px 0;
  border: 0;
  border-bottom: dotted 1px #666666;
}

p.back {
  margin: 0;
  padding: 0 5px 0 0;
  text-align: right;
}


/*---------- 画像の回り込み ----------*/

img.picture_le {
  margin: 0 10px 10px 0;
  float: left;
}

img.picture_ri {
  margin: 0 5px 10px 10px;
  float: right;
}

br.clear {
  display: block;
  clear: both;
}


/*---------- コンテンツ枠装飾 ----------*/

.gray_bg {
  margin: 18px 0 18px 0;
  padding: 2px 18px 2px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #eeeeee;
}

.gray_bg p {
  padding: 3px;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

.brown_bg {
  margin: 18px 2px 18px 2px;
  padding: 2px 8px 2px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #f8f4e6;
}

.pink_bg {
  margin: 18px 2px 18px 2px;
  padding: 2px 8px 2px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #fdeee6;
}

.green_bg {
  margin: 18px 2px 18px 2px;
  padding: 2px 8px 2px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #f0f6da;
}

.blue_bg {
  margin: 18px 2px 18px 2px;
  padding: 2px 8px 2px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #ebf6f7;
}

.info_bg {
  margin: 18px 2px 18px 2px;
  padding: 2px 8px 2px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  background-color: #fff8e3;
}

.point_bg {
  margin: 10px 2px 10px 2px;
  padding: 2px 5px 2px 15px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border: solid 1px #dfcf98;
  background-color: #fcfbf9;
}

.pale_bg {
  margin: 18px 2px 18px 2px;
  padding: 8px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  background-color: #fffedf;
}

.message_bg {
  margin: 18px 2px 18px 2px;
  padding: 2px 8px 2px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  background-color: #fff8e3;
  background-image: url(../img/message.png);
  background-repeat: no-repeat;
}

.memo_bg {
  margin: 8px 0 18px 0;
  padding: 6px 18px 6px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  background-color: #faf2e2;
}

.memo_w_bg {
  margin: 8px 0 12px 0;
  padding: 6px 18px 6px 18px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  background-color: #fff8ee;
}

.koe_bg {
  margin: 0;
  padding: 0;
}

.koe_beta_bg {
  margin: 8px 0 8px 0;
  padding: 2px 10px 2px 10px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  background-color: #7e6a41;
}

.check_bg {
  margin: 8px 0 18px 0;
  padding: 2px 18px 2px 18px;
  line-height: 1.7;
  letter-spacing: 0.05em;
  color: #6c4e1f;
  border: solid 6px #ded0b2;
  background-color: #faf1e3;
}

.check_bg p {
  margin: 18px 0 18px 0;
  padding: 0 2px 0 2px;
  line-height: 1.7;
  color: #6c4e1f;
}

.banner_bg {
  margin: 3px 0 10px 0;
  padding: 10px 10px 10px 14px;
  border-top: solid 3px #dec58e;
  border-right: solid 3px #dec58e;
  border-bottom: solid 3px #dec58e;
  border-left: solid 3px #dec58e;
  background-color: #fff8e3;
}

.waku_bg {
  margin: 14px 2px 14px 2px;
  padding: 2px 8px 2px 10px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 10px #f1eae0;
  border-right: solid 6px #f1eae0;
  border-bottom: solid 10px #f1eae0;
  border-left: solid 6px #f1eae0;
}

.waku_gray_bg {
  margin: 14px 2px 14px 2px;
  padding: 6px 14px 2px 14px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 2px #dddddd;
  border-right: solid 2px #dddddd;
  border-bottom: solid 2px #dddddd;
  border-left: solid 2px #dddddd;
  background-color: #fcfbf9;
}

#contents .waku_tone_bg {
  margin: 14px 2px 14px 2px;
  padding: 2px 8px 2px 10px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 10px #f1eae0;
  border-right: solid 6px #f1eae0;
  border-bottom: solid 10px #f1eae0;
  border-left: solid 6px #f1eae0;
  background-color: #fffcf7;
}

.waku_gold_bg {
  margin: 14px 2px 14px 2px;
  padding: 2px 6px 2px 8px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  border-top: solid 5px #f0ddb2;
  border-right: solid 5px #f0ddb2;
  border-bottom: solid 5px #f0ddb2;
  border-left: solid 5px #f0ddb2;
  background-color: #fff8e3;
}

.gray_bg_contact {
  margin: 18px 2px 10px 2px;
  padding: 10px 8px 10px 18px;
  line-height: 1.7;
  letter-spacing: 0.05em;
  border-top: solid 1px #dddddd;
  border-right: solid 1px #dddddd;
  border-bottom: solid 1px #dddddd;
  border-left: solid 1px #dddddd;
  background-color: #eeeeee;
}

.gray_bg_contact p {
  margin: 0;
  padding: 3px 0 3px 0;
  line-height: 1.7;
}


/*---------- 文字装飾 ----------*/

span.big {
  font-size: 1.12em;
  line-height: 1.9;
}

span.b_big {
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.7;
}

span.b_big_x {
  font-weight: bold;
  font-size: 1.25em;
  line-height: 1.7;
}

span.check {
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.7;
  color: #555555;
}

span.red {
  color: #e60033;
}

span.red_x {
  color: #e60033;
  font-size: 1.12em;
  line-height: 1.7;
}

span.red_b {
  color: #e60033;
  font-weight: bold;
  line-height: 1.7;
}

span.red_big {
  color: #e60033;
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.7;
}

span.red_big_x {
  color: #e60033;
  font-weight: bold;
  font-size: 1.25em;
  line-height: 1.7;
}

span.brown {
  color: #993300;
}

span.brown_b {
  color: #993300;
  font-weight: bold;
}

span.brown_x {
  color: #993300;
  font-size: 1.12em;
  line-height: 1.7;
}

span.brown_b {
  color: #993300;
  font-weight: bold;
  line-height: 1.7;
}

span.brown_big {
  color: #993300;
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.7;
}

span.brown_big_x {
  color: #993300;
  font-weight: bold;
  font-size: 1.25em;
  line-height: 1.7;
}

span.blue {
  color: #007bbb;
}

span.blue_b {
  color: #007bbb;
  font-weight: bold;
  line-height: 1.7;
}

span.blue_big {
  color: #007bbb;
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.7;
}

span.pink {
  color: #c53d43;
}

span.pink_b {
  color: #c53d43;
  font-weight: bold;
  line-height: 1.7;
}

span.pink_big {
  color: #c53d43;
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.7;
}

span.orange {
  color: #e85922;
  line-height: 1.7;
}

span.orange_b {
  color: #e85922;
  font-weight: bold;
  line-height: 1.7;
}

span.orange_big {
  color: #e85922;
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.7;
}

span.orange_big_x {
  color: #e85922;
  font-weight: bold;
  font-size: 1.25em;
  line-height: 1.7;
}

span.green {
  color: #00ae4f;
}

span.green_b {
  color: #688119;
  font-weight: bold;
  line-height: 1.7;
}

span.green_big {
  color: #688119;
  font-weight: bold;
  font-size: 1.12em;
  line-height: 1.7;
}

span.mark {
  padding: 2px 2px 0 2px;
  color: #54351f;
  line-height: 1.7;
  background-color: #fdfaab;
}

span.mark_b {
  padding: 2px 2px 0 2px;
  color: #54351f;
  line-height: 1.7;
  font-weight: bold;
  background-color: #fdfaab;
}

span.mark_big {
  padding: 2px 2px 0 2px;
  color: #54351f;
  font-size: 1.12em;
  line-height: 1.7;
  font-weight: bold;
  background-color: #fdfaab;
}

 span.mark_red {
  padding: 2px 2px 0 2px;
  color: #e60033;
  line-height: 1.7;
  background-color: #fdfaab;
}

span.mark_red_b {
  padding: 2px 2px 0 2px;
  color: #e60033;
  font-weight: bold;
  line-height: 1.7;
  background-color: #fdfaab;
}

span.mark_brown {
  padding: 2px 2px 0 2px;
  color: #993300;
  line-height: 1.7;
  background-color: #fdfaab;
}

span.mark_brown_b {
  padding: 2px 2px 0 2px;
  color: #993300;
  font-weight: bold;
  line-height: 1.7;
  background-color: #fdfaab;
}


/*---------- サイドエリア ----------*/

#menu hr.line {
  margin: 0;
  padding: 2px 0 6px 0;
  border: 0;
  border-bottom: dotted 1px #666666;
}


/*---------- トップに戻る ----------*/

.menu_back p.back {
  margin: 6px 0 0 0;
  padding: 0 5px 0 0;
  text-align: right;
}

.scroll {
  width: 180px;
  height: 28px;
}



.circle-right{
	width: 60px;
	height: 60px;
	font-size:0.7em;
	border-radius: 50%;
	position: relative;
	background: #228656;
	color:#fff;
	text-align: center;
	line-height: 40px;
}

.circle-right:before{
content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: -5px;
  top: 23px;
  border-left:8px solid #228656;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}


@keyframes fadein {
from {
    opacity: 0;
    transform: translateY(5px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}



.question {
  user-select: none;
  cursor: pointer;
  margin: 0 0 2px 0;
}
.question:hover {
  text-decoration: underline;
}
.answer {
  border: 1px solid #ddd;
  display: none;
  background: #fcfcfc;
  margin: 0 0 0.5em 1em;
  padding: 10px;
}


.dialog {
  overflow: hidden;
  position: absolute;
  top: 30%;
  height: auto;
  width: 940px;
  display: none;
  border:1px solid #aaa;
  z-index:1000;
}
.dialog-header {
  color: #222222;
  background: #fff;
  font-weight: bold;
  overflow: hidden;
  padding:5px;
}
.dialog-title {
  float: left;
}
.dialog-close {
  float: right;
  border: 1px solid #d3d3d3;
  background: #e6e6e6;
  font-weight: normal;
  color: #555555;
  cursor:pointer;
}
.dialog-content {
  position: relative;
  border: 0;
  padding: .5em 1em;
  background: #fff;
  overflow: auto;
  width: auto;
  height: auto;
}



.form-item {
  position:relative;
}

.input {
    height: 24px;
    padding: 3px 3px;
    background-color: #f0f3f5;
    font-size: 14px;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}


.form-title {
    width: 25%;
    padding-top: 2px;
    font-weight: normal;
    display: inline-block;
    vertical-align: top;
}

.form-title-label {
    display: inline-block;
    vertical-align: middle;
    padding: 0 0px;

    font-size: 14px;
    letter-spacing: 0.05em;
}


.btn-gradation {
  display: inline-block;
  text-align: left;
  background-image: linear-gradient(#eaeaea 0%, #c6c6c6 100%);
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.5), 0 2px 2px rgba(0, 0, 0, 0.19);
  color: #a5a5a5;
  font-size: 16px;
  text-decoration: none;
  font-weight: bold;
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 1);
  padding: 12px 24px;
  border-radius: 4px;
  font-size: 16px;
}

.btn-gradation:hover {
  opacity: 0.8;
}

.accordion_area {}
.accordion_area .accordion_one .ac_header {
  background-color: #ffffff;
  border: 1px solid #ccc;
  padding: 0.3rem 4rem 0.3rem 2rem;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition: .2s;
}
.accordion_area .accordion_one .ac_header:not(.open):hover {
  background-color: #f1f8ff;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header {
  background-color: #f5f5f5;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header:not(.open):hover {
  background-color: #f1f8ff;
}
.accordion_area .accordion_one .ac_header .i_box {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.accordion_area .accordion_one .ac_header .i_box:before {
  border-top: 2px solid #014897;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.accordion_area .accordion_one .ac_header .i_box:after {
  border-left: 2px solid #014897;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s;
}
.accordion_area .accordion_one .ac_header.open .i_box:after {
  height: 0;
}
.accordion_area .accordion_one .ac_inner {
  display: none;
  padding: 1.5rem 2rem 1.5rem 2rem;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  background: #fff;
}
 
/*=========
faq
=========*/
 
.p-faq__headinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}
.p-faq__headinner::before {
  position: absolute;
  left: 0;
  content: "Q．";
  color: #09357f;
  font-size: 20px;
  font-weight: bold;
}
.p-faq__headinner p.p-faq__q-txt {
  font-size: 20px;
}
.p-faq__bodyinner {
  display: block;
  padding-left: 35px;
  position: relative;
  line-height: 1.5;
}
.p-faq__bodyinner::before {
  position: absolute;
  left: 0;
  content: "A．";
  color: #de0000;
  font-size: 20px;
  font-weight: bold;
}
.p-faq__bodyinner p.p-faq__a-txt {
  font-size: 20px;
}