@charset "utf-8";

/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:
	
	Eric Meyer					:: http://ericmeyer.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com
	
-------------------------------------------------------------------------------*/

/* Let's default this puppy out
-------------------------------------------------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}									
body {
    margin-top: 106px;
}
article, aside, figure, footer, header, hgroup, nav, section {display: block;}

/* Responsive images and other embedded objects
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
   If this default setting for images is causing issues, you might want to replace it with a .responsive class instead. */
img,
object,
embed {max-width: 100%;}

/* force a vertical scrollbar to prevent a jumpy page */
html {overflow-y: scroll;}

/* we use a lot of ULs that aren't bulleted. 
	don't forget to restore the bullets within content. */
ul {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before, 
blockquote:after, 
q:before, 
q:after {content: ''; content: none;}

a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; text-decoration: none;}

del {text-decoration: line-through;}

abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}

/* tables still need cellspacing="0" in the markup */
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}

hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}

input, select {vertical-align: middle;}

pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}

input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom; *vertical-align: baseline;}
.ie6 input {vertical-align: text-bottom;}

select, input, textarea {font: 99% sans-serif;}

table {font-size: inherit; font: 100%;}
 
/* Accessible focus treatment
	people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active {outline: none;}

small {font-size: 85%;}

strong, th {font-weight: bold;}

td, td img {vertical-align: top;} 

/* Make sure sup and sub don't screw with your line-heights
	gist.github.com/413930 */
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
.clickable,
label, 
input[type=button], 
input[type=submit], 
button {cursor: pointer;}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0;}

/* make buttons play nice in IE */
button {width: auto; overflow: visible;}
 
/* scale images in IE7 more attractively */
.ie7 img {-ms-interpolation-mode: bicubic;}

/* prevent BG image flicker upon hover */
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}

/* let's clear some floats */
.clearfix:before, .clearfix:after { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.clearfix:after { clear: both; }  
.clearfix { zoom: 1; }  



/* Ok, this is where the fun starts.
-------------------------------------------------------------------------------*/

/* new Linux- and Windows-friendly sans-serif font stack: http://mky.be/fontstack */
body {font: 13px Helmet, Freesans, sans-serif; position: relative;}

/* using local fonts? make sure to read up on Paul Irish's 
	Bulletproof @font-face syntax: http://mky.be/font-face/bulletproof/ */

/* we like off-black for text */
body, select, input, textarea {color: #333;}


/* Custom text-selection colors (remove any text shadows: twitter.com/miketaylr/status/12228805301) */
::-moz-selection{background: #81D8D0; color: #fff; text-shadow: none;}
::selection {background: #81D8D0; color: #fff; text-shadow: none;} 

/*	j.mp/webkit-tap-highlight-color */
a:link {-webkit-tap-highlight-color: #81D8D0;} 

ins {background-color: #81D8D0; color: #000; text-decoration: none;}
mark {background-color: #81D8D0; color: #000; font-style: italic; font-weight: bold;}


/* HTML5 Reset end
-------------------------------------------------------------------------------*/


/*
Standard Classes
Author:Takuro Hishikawa
*/
strong{font-weight:bold}
.nomargin{margin:0!important}
.noborder{border:0!important}
.alignleft{text-align:left}
.aligncenter{text-align:center}
.alignright{text-align:right}
.clearboth{clear:both}
.clearleft{clear:left}
.clearright{clear:right}
img.alignleft,.floatleft{float:left;margin:0 10px 10px 0}
img.alignright,.floatright{float:right;margin:0 0 10px 10px}

*{
	box-sizing: border-box;
    font-family: "Noto Sans Japanese";
    color: #111111;
    font-size: 14px;
    letter-spacing: 0.08em;
}
h2, h3, h4{
	font-family: "Sawarabi Mincho";
}
p{
	line-height: 1.8em;
}
.wrap{
	width: 1000px;
	margin: 0 auto;
}
.linkwrap{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
}
.tablet{
	display: none;
}
.sp-firstview{
	display: none;
}
/*** header ***/

header{
	padding-top: 20px;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(255,255,255,0.9);
    z-index: 100;
    width: 100%;
    transition: .6s;
}
header.small {
    height: 70px;
}
header.small .Gnav ul li {
    font-size: 12px;
    transition: .6s;
}
header.small .head-description {
    opacity: 0;
    visibility: hidden;
    display: none;
}
.head-logo.small {
    transform: scale(0.6);
    transition: .6s;
    position: relative;
    top: -26px;
}
header.small .Gnav ul {
    width: 1000px;
    transition: .6s;
    margin-top: 6px;
    float: none;
}
header.small .Gnav ul li:after {
    width: 16px;
    top: 8px;
    right: 7px;
}
header.small .Gnav ul li:first-of-type{
	width: 55px;
}
header.small .Gnav ul li:nth-of-type(3), header.small .Gnav ul li:nth-of-type(4), header.small .Gnav ul li:nth-of-type(6),header.small .Gnav ul li:nth-of-type(8){
	width: 90px;
}
header.small .Gnav ul li:nth-of-type(2), header.small .Gnav ul li:nth-of-type(5),header.small .Gnav ul li:nth-of-type(7) {
    width: 153px;
}
.head-logo{
	float: left;
}
.head-description{
	float: left;
	width: 220px;
	font-size: 14px;
	margin-left: 20px;
}
.head-description dt{
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 5px;
}
.head-description dd span{
	color: #fff;
	font-size: 14px;
	background: #68D6C3;
	padding: 2px 7px;
	margin-bottom: 5px;
	display: table;
}
.menubtn, .menu-wrap{
	display: none;
}
.Gnav ul{
	width: 580px;
	float: right;
}
.Gnav ul li{
	display: inline-block;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 12px;
}
.Gnav ul li:first-of-type, .Gnav ul li:nth-of-type(4), .Gnav ul li:nth-of-type(7){
	width: 170px;
}
.Gnav ul li:nth-of-type(2), .Gnav ul li:nth-of-type(5), .Gnav ul li:nth-of-type(8){
	width: 200px;
}
.Gnav ul li:nth-of-type(3), .Gnav ul li:nth-of-type(6), .Gnav ul li:nth-of-type(9){
	width: 200px;
}
.Gnav ul li a{
	position: relative;
	color:#333;
}
.Gnav ul li:nth-of-type(3) a{
	color:#C00;
}
.Gnav ul li a:before{
	content: '';
	width: 0%;
	height: 3px;
	background: #68D6C3;
	position: absolute;
	bottom: -6px;
	left: 0;
	right: 0;
	margin: auto;
	transition: .4s;
}
.Gnav ul li a:hover:before{
	width: 100%;
}

/*** menubtn ***/

.spmenubtn{
	display: none;
	text-align: center;
	width: 36px;
	height: 50px;
	position: relative;
	z-index: 9999;
}
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
    width: 30px;
    height: 26px;
    margin: 0 auto;
    display: table;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #000;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 11px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(11px) rotate(-40deg);
    transform: translateY(11px) rotate(-40deg);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-11px) rotate(40deg);
    transform: translateY(-11px) rotate(40deg);
}
.menu-trigger.active span{
	background-color: #fff;
}
.spmenubtn .menutxt{
	font-size: 8px;
	display: block;
	opacity: 1;
	transition: .4s;
	visibility: visible;
}
.spmenubtn .closetxt{
	visibility: hidden;
	font-size: 8px;
	opacity: 0;
	display: block;
	transition: .4s;
	position: absolute;
	bottom: 7px;
	left: 0;
	right: 0;
	margin: auto;
}
.spmenubtn.active .closetxt{
	visibility: visible;
	color: #fff;
	opacity: 1;
	position: absolute;
	bottom: 7px;
	left: 0;
	right: 0;
	margin: auto;
}
.spmenubtn.active .menutxt{
	visibility: hidden;
	opacity: 0;
}
.sp-menu{
	width: 100%;
	height: 100%;
	background:#67D6C4;
	position: fixed;
	top: 0;
	left: 0;
	visibility: hidden;
	opacity: 0;
	transition: .4s;
}
.sp-menu.open{
	visibility: visible;
	opacity: 1;
	z-index: 9998;
}
.sp-menu ul li{
    font-weight: bold;
    padding: 5px;
}
.sp-menu ul li a{
    color: #fff;
}
.sp-menu ul {
    margin-top: 60px;
    text-align: center;
}

/**** index ****/

.main-wrap{
	width: 100%;
	height: 514px;
	position: relative;
	margin-top: 30px;
}
/*.mainV img{
	position: absolute;
	bottom: -40px;
	right: 0;
}*/
.main-big{
	font-size: 36px;
	margin-bottom: 40px;
	font-family: "Sawarabi Mincho";
	line-height: 1.5em;
	color:#fff;
}
.main-normal{
	font-size: 14px;
	line-height: 1.8em;
	font-family: "Noto Sans Japanese";
	color:#fff;
}
.txt-box{
	position: absolute;
	right: -40px;
	top: 45px;
	z-index: 5;
	text-align:left;
	width:350px;
}
.mainV-img{
	left: -130px;
	bottom: -5px;
	width: 800px;
	z-index: 1;
}
.mainV-img-bg{
	position: absolute;
	right:-130px;
	top:-15px;
	z-index: 0;
}
.graywrap{
	width: 100%;
	background: #fcfaf4;
}
.top-content{
	overflow: hidden;
}
h2.layer-head{
	font-size: 120px;
	position: relative;
	text-align: center;
	top: -30px;
	z-index:2;
}
h2.layer-head span{
	font-size: 20px;
	margin-right: 60px;
	font-family: "Sawarabi Mincho";
}
.article-wrap{
	display: table;
	background: #68D6C3;
	float: left;
	margin-left: 50px;
}
.case-article, .peace-article{
	width: 300px;
	background: #fff;
	position: relative;
	transition: .2s;
}
.case-article:hover, .peace-article:hover{
	transform: translateX(-10px) translateY(-10px);
}
.article-wrap:first-of-type, .peace-article:first-of-type{
	margin-left: 0;
}
.case-article dt, .peace-article dt{
	width: 100%;
	height: 168px;
}
.top-content .article-wrap:first-of-type .case-article > dt{
	background: url(images/index/case01_new.png) no-repeat;
	background-size: cover;
	background-position: center;
}
.top-content .article-wrap:nth-of-type(2) .case-article > dt{
	background: url(images/index/case02.png) no-repeat;
	background-size: cover;
	background-position: center;
}
.top-content .article-wrap:nth-of-type(3) .case-article > dt{
	background: url(images/index/case03.png) no-repeat;
	background-size: cover;
	background-position: center;
}
.case-article dd, .peace-article dd{
	padding: 20px;
}
.case-article dd .case-num{
	color: #68D6C3;
	font-size: 10px;
	margin-bottom: 10px;
}
.case-article dd a, .peace-article dd a{
	font-size: 10px;
	position: relative;
	display: block;
	border-top: solid 1px #68D6C3;
	margin-top: 30px;
	padding-top: 14px;
	font-family: "Sawarabi Mincho";
}
.case-article dd a:after, .peace-article dd a:after{
	content: '>';
    color: #68D6C3;
    font-size: 12px;
    position: absolute;
    top: 12px;
    right: 0;
}
.simplebtn{
	background: #68D6C3;
	color: #fff;
	padding: 16px 160px;
	border: solid 4px #68D6C3;
	display: table;
	position: relative;
	transition: .3s;
	font-family: "Sawarabi Mincho";
}
.simplebtn:after{
	content: '>';
    color: #fff;
    font-size: 12px;
    position: absolute;
    top: 16px;
    right: 15px;
    transition: .3s;
}
.simplebtn:hover, .simplebtn:hover:after{
	background: none;
	color: #68D6C3;
}
.simplebtn.center{
	margin: 60px auto 50px;
}
.paper{
	width: 100%;
	height: 400px;
	background: url(images/index/bg-paper.jpg) no-repeat;
	background-attachment: fixed;
	background-size: cover;
}
h2.en-ja{
	font-size: 40px;
	margin: 80px 0 70px;
}
h2.en-ja span{
	font-size: 18px;
	margin-left: 140px;
	vertical-align: middle;
	font-family: "Sawarabi Mincho";
	position: relative;
}
h2.en-ja span:after{
	content: '';
	width: 100px;
	height: 2px;
	background: #111;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: -120px;
}
.voice .row img:first-of-type{
	float: left;
}
.voice .row img:last-of-type{
	float: right;
}
.voice .row:first-of-type{
	margin-bottom: 20px;
}
.inprant{
	overflow: hidden;
	padding-bottom: 50px;
}
.inprant-big{
	font-size: 40px;
	margin-bottom: 40px;
}
.inprant-description{
	font-size: 18px;
	margin-bottom:15px;
}
.inprant-row{
	position: relative;
	width: 100%;
	margin-top: 100px;
}
.inprant-row.right-img img{
	position: absolute;
	top: -60px;
	right: -100px;
}
.inprant-row.left-img img{
	position: absolute;
	top: -60px;
	left: -100px;
}
.knowledge-description{
	width: 650px;
	background: #fff;
	padding: 50px 140px;
}
.inprant-row.left-img .knowledge-description{
	float: right;
}
.knowledge-description h3{
	font-size: 50px;
}
.knowledge-description h3 span{
	font-size: 12px;
	margin-right: 190px;
	vertical-align: middle;
	position: relative;
	font-family: "Sawarabi Mincho";
}
.knowledge-description h3 span:after{
    content: '';
    width: 130px;
    height: 2px;
    background: #111111;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -160px;
    margin: auto;
}
.knowledge-description h4{
	font-size: 24px;
	margin: 20px 0 40px;
}
.more-btn{
	font-size: 12px;
	color: #fff;
	background: #68D6C3;
	padding: 6px 44px;
	display: table;
	margin-top: 60px;
	border: solid 4px #68D6C3;
	position: relative;
	transition: .3s;
	font-family: "Sawarabi Mincho";
}
.more-btn:after{
	content: '>';
	color: #fff;
	font-size: 12px;
	position: absolute;
	top: 5px;
	right: 15px;
	transition: .3s;
}
.more-btn:hover, .more-btn:hover:after{
	color: #68D6C3;
	background: none;
}
.bg-dr{
	width: 100%;
	height: 500px;
	background: url(images/index/bg-dr.jpg) no-repeat;
	background-size: cover;
	background-attachment: fixed;
}
.bg-dr p{
	font-size: 32px;
	font-family: "Sawarabi Mincho";
	padding-top: 220px;
	color: #fff; 
}
.dr .row {
	margin-bottom: 60px;
}
.dr .row img{
	float: left;
}
.dr-txt{
	width: 450px;
	float: right;
}
.dr-txt h3{
	font-size: 24px;
	margin-bottom: 40px;
}
.dr-txt p{
	margin-top: 2em;
}
.dr-txt table{
	margin-top: 2em;
}
.dr-txt table th{
	padding-right: 20px;
	vertical-align: text-top;
	text-align: left;
	white-space: nowrap;
}
.dr-txt table th, .dr-txt table td{
	padding-bottom: 6px;
}
.dr-txt table td span{
	display: block;
	margin-left: 1em;
}
.dr .aligncenter{
	margin: 50px auto;
}
.dr .img-center{
	display: block;
	margin: 0 auto;
}
.peace{
	overflow: hidden;
	padding-bottom: 60px;
}
.peace-article{
	border-top: solid 5px #e0cc90;
}
.peace-article dd h3{
	font-family: "Noto Sans Japanese";
	font-size: 18px;
	margin-bottom: 20px;	
}
.peace .article-wrap:first-of-type > .peace-article dt{
	background: url(images/index/peace01.png) no-repeat;
	background-size: cover;
	background-position: center;
}
.peace .article-wrap:nth-of-type(2) .peace-article > dt{
	background: url(images/index/peace02.png) no-repeat;
	background-size: cover;
	background-position: center;
}
.peace .article-wrap:nth-of-type(3) .peace-article > dt{
	background: url(images/index/peace03.png) no-repeat;
	background-size: cover;
	background-position: center;
}
img.wide{
	width: 100%;
	height: auto;
}
#map1{
	margin-top: -5px;
}
.halfbox{
	width: 50%;
	float: left;
}
.access .halfbox{
	padding: 40px 30px;
}
.access .halfbox ul{
	margin-bottom: 40px;
}
.access .halfbox ul li{
	position: relative;
	padding-left: 22px;
	margin-bottom: 6px;
}
.access .halfbox ul li:before{
	content: '';
	width: 10px;
	height: 10px;
	background: #111111;
	position: absolute;
	top: 4px;
	left: 0;
}
a.gold-btn, a.green-btn, .submitBtn{
	width: 450px;
	display: table;
	margin: 0 auto;
	color: #fff;
	position: relative;
	text-align: center;
	padding: 12px 0;
	font-size: 16px;
	margin-top: 30px;
	transition: .3s;
}
a.gold-btn{
	background: #deca96;
	border: solid 4px #deca96;
}
a.green-btn, .submitBtn{
	background: #68D6C3;
	border: solid 4px #68D6C3;
}
a.gold-btn:after, a.green-btn:after{
    content: '>';
    color: #fff;
    font-size: 14px;
    position: absolute;
    top: 12px;
    right: 20px;
    transition: .3s;
}
a.gold-btn:hover, a.gold-btn:hover:after{
	color: #deca96;
	background: none;
}
a.green-btn:hover, a.green-btn:hover:after, .submitBtn:hover{
	color: #68D6C3;
	background: none;
}
a.gold-btn2{
	width: 450px;
	display: table;
	margin: 0 auto 60px auto;
	color: #fff;
	position: relative;
	text-align: center;
	padding: 12px 0;
	font-size: 16px;
	transition: .3s;
}
a.gold-btn2{
	background: #deca96;
	border: solid 4px #deca96;
}
a.gold-btn2:after{
    content: '>';
    color: #fff;
    font-size: 14px;
    position: absolute;
    top: 12px;
    right: 20px;
    transition: .3s;
}
a.gold-btn2:hover{
	color: #deca96;
	background: none;
}

footer{
	background: #fcfaf4;
	width: 100%;
	padding: 8px 0;
}
footer small{
	font-size: 10px;
	display: block;
	text-align: center;
}
.footlogo{
	display: table;
	margin: 20px auto 20px;
}


/*** implant ****/

.sub-page:after{
	content: '';
	width: 10px;
	height: 200px;
/*	background: #dfcb93; */
	position: absolute;
	top: 220px;
	left: 0;
}
.page-mainV.wrap{
	position: relative;
	margin-top: 20px;
	margin-bottom:20px;
	height:380px;
	background: linear-gradient(transparent 50%, #68D6C3 50%);
}
.page-mainV.wrap img{
	position:absolute;
	left:125px;
}
.page-mainV.wrap h1{
	font-size: 40px;
	font-family: "Sawarabi Mincho";
	padding: 20px;
	background: rgba(255,255,255,0.4);
	position: absolute;
	text-align:center;
	width:750px;
	bottom: 30px;
	left: 125px;
	font-weight:100;
}
.side-content{
	width: 250px;
	float: left;
}
.side-content dl.change-img{
	position: relative;
}
.side-content dl.change-img dd:before{
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 17.3px 10px 0;
	border-color: transparent #81D8D0 transparent transparent;
	position: absolute;
	top: 50px;
	left: -15px;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	z-index: 10;
}
.side-content dl.change-img dt{
	position: relative;
	width: 250px;
	height: 226px;
	overflow: hidden;
}
.side-content dl.change-img dt span{
	font-size: 40px;
	display: block;
	color: #fff;
	position: absolute;
	top: 80px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 10;
	font-family: "Sawarabi Mincho";
	text-align: center;
}
.side-content dl.change-img dt span.black{
	color: #000;
}
.side-content dl.change-img dt .color{
	position: absolute;
	top: 0;
	left: 0;
	visibility: hidden;
	transition: .3s;
	opacity: 0;
	z-index: 2;
}
.side-content dl.change-img dt .mono{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.side-content dl.change-img dt:hover > .color{
	visibility: visible;
	opacity: 1;
}
.side-content dl.change-img dd{
	width: 100%;
	height: 100%;
	padding: 15px;
	visibility: hidden;
	opacity: 0;
	background: #81D8D0;
	position: absolute;
	right: -250px;
	top: 0px;
	transition: .3s;
	line-height:2.0em;
}
.side-content dl.change-img:hover > dd, .side-content dl.change-img:hover > dd:before{
	visibility: visible;
	opacity: 1;
}
.main-content{
	width: 730px;
	float: right;
	padding: 0px 0px 0px 20px;
}

/*追加*/
.qdt{width: 45%;margin: 2%;display: inline-block;}
.qdt img{width: 100%;}

.qdt a.qdt-img {
	padding: 0px;
	background: #fff;
	border: 4px solid #fff;
	color: #fff; 
	display: block; text-align:center; 
	position: relative; 
	font-size: 12px; 
	transition: .3s;
}
.qdt a.qdt-img::after{
	color:#fff; 
	right: 10px;
}
.qdt a.qdt-img:hover::after{
	color: #fff;
}
.qdt a.qdt-img:hover{
	background: #fff;
	border: 4px solid #fff;
	opacity: 0.5;
}
.qdt a{
	padding: 4px;
	background: #68D6C3;
	border: 4px solid #fff;
	color: #fff; 
	display: block; 
	text-align:center; 
	position: relative; 
	font-size: 12px; 
	transition: .3s;
}
.qdt a::after{
	position: absolute;
	color:#68D6C3; 
	right: 10px;
	content: '>';
    color: #fff;
    font-size: 14px;
    position: absolute;
    top: 4px;
    right: 20px;
    transition: .3s;
}
@media only screen and (max-device-width: 480px) {
	/* スマホ用のCSS */
.qdt a{
	padding: 4px;
	background: #68D6C3;
	/*border: 4px solid #fff;*/
	color: #fff; 
	display: block; 
	text-align:center; 
	position: relative; 
	font-size: 10px; 
	transition: .3s;
}
	
}

.qdt a::after{
	position: absolute;
	color:#fff; 
	right: 10px;
	content: '>';
    color: #fff;
    font-size: 14px;
    position: absolute;
    top: 4px;
    right: 20px;
    transition: .3s;
}
.qdt a:hover::after{
	color: #68D6C3;
}
.qdt a:hover{
	background: #fff; 
	border:4px solid #68D6C3;
	color: #68D6C3;
}


.sub-page .main-content h2{
	font-size: 30px;
	font-family: "Noto Sans Japanese";
	font-weight:normal;
	position: relative;
	margin-top: 40px;
}
.sub-page .main-content h2:after{
	content: '';
	width: 60px;
	height: 3px;
	background: #dfcb93;
	position: absolute;
	bottom: 0;
	left: 0;
}
.sub-page p{
	font-size: 14px;
	padding: 0px;
	margin-bottom: 30px;
}
.sub-page p.mb_0{
	margin-bottom:-10px;
	margin-top:-5px;
}
.breadcrumb p{
	font-size: 12px;
	padding: 10px 0 0;
	margin-bottom: 0;
}
p.h2-sub{
	font-size: 12px;
	font-family: "Sawarabi Mincho";
	margin: 10px 0 40px;
	padding: 0;
}
.sub-page .main-content h3{
	padding: 10px 10px 10px 13px;
	background: #68D6C3;
	color: #fff;
	font-size: 17px;
	margin-bottom: 30px;
	font-weight: 400;
	font-family: "Noto Sans Japanese";
}
.sub-page .main-content h3 span{
	background:#deca96;
	padding:10px;
	margin-left:-10px;
	margin-right:15px;
}
.sub-page .main-content h4{
	font-weight: bold;
	font-size: 14px;
	border-bottom: solid 3px #deca96;
	font-family: "Noto Sans Japanese";
	padding-bottom: 6px;
	margin-bottom: 26px;
}
.sub-page .main-content h5{
	padding: 0.25em 0.5em;/*上下 左右の余白*/
	color: #333333;/*文字色*/
	background: transparent;/*背景透明に*/
	border-left: solid 5px #81D8D0;/*左線*/
	font-size:14px;
	font-weight:bold;
	margin-bottom:18px;
}


p.blue-back{
	background: #F0FBF9;
	font-size: 14px;
	padding: 15px 20px;
	box-sizing:border-box;
	line-height:200%;
}
.consultation{
	width: 100%;
	margin-bottom: 50px;
}
.consultation th{
	background: #F0FBF9;
	font-size: 14px;
	width: 180px;
	padding: 10px;
	text-align: left;
	border-bottom: solid 1px #e2e2e2;
	vertical-align:top;
}
.consultation td{
	font-size: 14px;
	padding: 10px;
	text-align: left;	
	border-bottom: solid 1px #e2e2e2;
}
.consultation tr:first-of-type > th, .consultation tr:first-of-type > td{
	color: #68D6C3;
	font-size: 14px;
	border-bottom: solid 3px #68D6C3;
	background: #fff;
}
.left-img{
	float: left;
}
.right-img{
	float: right;
}
p.en-ja{
	font-size: 30px;
	font-family: "Sawarabi Mincho";
	padding: 0;
	margin: 60px 0 40px;
	font-weight: bold;
}
p.en-ja span{
	font-size: 18px;
	vertical-align: top;
	margin-left: 210px;
	position: relative;
	display: inline-block;
}
p.en-ja span:before{
	content: '';
	width: 170px;
	height: 2px;
	background: #111;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: -190px;
}
.content-link{
	padding: 0 10px;
}
.content-link li{
	font-size: 14px;
	margin: 8px 0;
	line-height: 1.8em;
}
.content-link li a{
	color: #71BFB8;
	text-decoration: underline;
}
.content-link li a:hover{
	color:#e0cc90;
}
article.case-study{
	padding: 10px 0;
	transition: .3s;
	position: relative;
}
article.case-study:hover{
	background: #fcfaf4;
}
article.case-study .thumbnail{
	width: 150px;
	height: 84px;
	overflow: hidden;
	float: left;
}
article.case-study .case-txt{
	width: calc(100% - 165px);
	float: right;
}
article.case-study p{
	margin-bottom: 0;	
}
p.case-num{
	font-size: 10px;
	color: #deca96;
	margin-bottom: 10px;
}
dl.record{
	width: 250px;
	margin-top: 0px;
}
dl.record dt{
	background: #68D6C3;
	padding: 10px;
	font-size: 14px;
	color: #fff;
}
dl.record dd ul li{
	padding: 10px;
	border-bottom: solid 1px #68D6C3;
	font-size: 13px;
}
dl.record dd ul li.space-left{
	padding-left: 20px;
}
dl.record dd ul li a:hover{
	color: #e0cc90;
	text-decoration: underline;
}
strong{
	background: linear-gradient(transparent 80%, rgba(179, 234, 234, 1) 60%);
	font-weight: bold;
}
span.big{	
font-size:24px;	
color:#F66;	
}	
span.rubi{	
font-size:16px;	
}
.consultation{
	width: 100%;
	margin-bottom: 50px;
}
.consultation th{
	background: #fcfaf4;
	font-size: 14px;
	width: 180px;
	padding: 10px;
	text-align: left;
	border-bottom: solid 1px #e2e2e2;
	vertical-align:middle;
}
.consultation td{
	font-size: 14px;
	padding: 10px;
	text-align: left;	
	border-bottom: solid 1px #e2e2e2;
}
.consultation tr:first-of-type > th, .consultation tr:first-of-type > td{
	color: #deca96;
	font-size: 14px;
	border-bottom: solid 3px #deca96;
	background: #fff;
}
.must{
	color:#F00;
}
.confirm{
	width:100%;
	text-align:center;
}

.error, .must{
	color:#F00;
}
.contactText{
	margin-top:20px;
	font-size:16px !important; 
}
.img_left{
	float:left;
	padding-right:15px;
}

img.mono{
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}
.allon4link a:hover img{
	opacity:0.5 !important;
}
.allon4link img{
	width:100%;
}
.mt50{
	margin-top:50px;
}
.box300{
	width:300px;
	float:left;
	box-sizing:border-box;
	padding:0 10px;
}
.box410{
	width:410px;
	float:left;
	box-sizing:border-box;
}
.box410 table th{
	width:20% ;
	font-size:13px;
	vertical-align:middle;
	padding:0 0 0 13px;
	box-sizing:border-box;
	color:#000 !important;
	border-bottom:#ddd 1px solid !important;
	background:#fcfaf4 !important;
}
.box410 table th.th_02,
.box410 table td.td_02{
	border-top:#DECA96 3px solid !important;
}
.box410 table td{
	font-size:14px;
	padding-left:20px;
	border-bottom:#ddd 1px solid !important;
	color:#111 !important;
}

.bannar img:hover{
  opacity: .5;
}

/*-------インプラント治療費-------*/
.plan_01{
	margin-bottom:70px;
}
.sub-page .main-content .price_wrap h3{
	margin-top:40px;
}
.sub-page .main-content h3 span{
	background:#deca96;
	padding:10px 15px;
	margin-left:-13px;
	margin-right:15px;
}
.red{
	color:#F00;
}
.sub-page p.img_70{
	width:55%;
	margin:0 auto 20px;
}
.sub-page p.img_70 img{
	width:100%;
}
.price_wrap i{
	color:#68D6C3;
}
table.table_01{
	border:#deca96 1px solid;
}
table.table_01 th,table.table_01 td{
	border:#CCC 1px solid;
	padding:15px;
	vertical-align:middle;
	box-sizing:border-box;
	line-height:180%;
}
table.table_01 th{
	background:#F0FBF9;
	border-bottom:#CCC 1px solid;
}
table.table_01 th:last-child{
	border:#CCC 1px solid;
}
.catch_wrap{
	margin-bottom:70px;
}
.catch_wrap p.text_01{
	font-size:20px;
	letter-spacing:0.2px;
	color:#333;
	line-height:190%;
	margin-bottom:0px;
	background:#fcfaf4;
	padding:25px 25px 30px;
}
.catch_wrap p.text_01 span{
	font-size:115%;
	letter-spacing:0px;
	background:rgba(0, 0, 0, 0) linear-gradient(transparent 90%, #dfcb93 0%) repeat scroll 0 0;
	margin-right:5px;
	color:#333;
}
.catch_wrap .box_01{
	background:url(images/price/003.jpg) no-repeat 100% 30%;
	background-size:80% auto;
	padding:45px 200px  55px 25px;
	box-sizing:border-box;
	margin-top:0;
}
.catch_wrap .box_01 p{
	font-size:20px;
	letter-spacing:0.5px;
	line-height:310%;
	text-shadow:1px 1px 10px #fff, 1px -1px 10px #fff, -1px 1px 10px #fff, -1px -1px 10px #fff, 0 0 22px #fff;
	margin-bottom:0;
}
.catch_wrap .box_01 p span{
	font-size:34px;
	letter-spacing:0;
	font-weight:500	;
}
.price_card{
	width: 80%;
	margin: 0 auto;
	display: block;
}
/*  #picup_news-------------------------------------*/
#picup_news{
	width:1000px;
	border:#CCC 1px solid;
	border-top:#CCC 5px dashed;
	box-sizing:border-box;
	padding:20px 30px 20px;
	margin:50px auto 30px auto;
}

#picup_news h2{
	font-size:33px;
	text-align:left;
	margin-bottom:15px;
}
#picup_news h2 span{
	border-bottom:#000 1px solid;
	color: #69d6c2;
	padding-bottom:7px;
	font-size:1.0em;
}
#picup_news p{
	font-size:17px;
	text-align:left;
	margin-bottom:15px;
	line-height:150%;
}
#picup_news p span{
	background: linear-gradient(transparent 60%, #69d6c2 60%);
}
#picup_news .h2{
	font-size:25px;
	text-align:left;
	margin-bottom:15px;
	border-bottom:#000 1px solid;
	color: #b3c33b;
	padding-bottom:7px;
	display: table;
	font-weight: 700;
}
.frame {
	display: inline-block;
	position: relative;
}
.frame:after {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
	transform: rotate(3deg); /* 回転させる */
	background: #fff;
	z-index: -1;
}
div#guidelines {
	width: 1100px;
    margin: 50px auto 0;
    padding: 20px 50px 1px;
}
div#guidelines h2.en-ja{
	margin: 0 auto 10px;
}
div#guidelines strong{
	background: linear-gradient(transparent 80%, rgba(179, 234, 234, 1) 60%);
	font-weight: bold;
	font-size: 1.5em;
	margin: 20px auto 0px;
	display: inline-block;
}

input.wpcf7-form-control.wpcf7-submit{
	-webkit-appearance: none;
  	border-radius: 0;
	background-color: #a1eeda;
	color: #fff;
	width: 150px;
	margin: 0 auto;
	display: block;
	height: 43px;
}
input.wpcf7-form-control.wpcf7-submit:hover{
	-webkit-appearance: none;
  	border-radius: 0;
	background-color: #fff;
	color: #a1eeda;
	height: 43px;
}
.wpcf7-response-output.wpcf7-mail-sent-ok,
.screen-reader-response{
    font-size: 20px;
    color: red;
}
.wpcf7-response-output.wpcf7-mail-sent-ok{
	margin-bottom: 15px;
}
div#lecture {
    overflow: scroll;
    height: 150px;
    margin-bottom: 30px;
}
div#lecture h4 span{
	font-size: .8em;
	color: red;
	background: none;
}
.flex{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flex .half {
    flex-basis: 45%;
    margin: 0 10px 20px;
}
.flex_around{display: flex;flex-wrap: wrap; justify-content: space-around;}
.flex_around a.item {
    background-color: #68D6C3;
    color: #fff;
    padding: 10px 15px;
	width: 32%;
	border: 1px solid #68D6C3;
}
.flex_around a.item:hover{
	background-color: #fff;
	color: #68D6C3;
}
.item_img{
	flex-basis: 43%;
}
.item_text{
	flex-basis: 50%;
}
a.hover:hover{color: #68D6C3;}

div.thanks_info{
	overflow: hidden;
	max-width: 1000px;
    border: #CCC 1px solid;
    border-top: #CCC 5px dashed;
    box-sizing: border-box;
    padding: 20px 30px 20px;
    margin: 50px auto 30px auto;
}
div.thanks_info h2{
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
}
div.thanks_info h2:after {
    content: '';
    width: 60px;
    height: 3px;
    background: none !important;
    /*position: absolute;*/
    bottom: 0;
    left: 0;
}
