@charset "UTF-8";

/* -----
====================================================================================================================== */

html{
    height: 100%;
    font-size: 16px;
    font-weight: 500;
}

body {
    font-family:'Noto Sans Japanese',sans-serif;
    line-height:1.7;
    margin: 0;
    color:#000;
    height: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    box-sizing: border-box;
}

img {
    max-width: 100%;
    width /***/:auto; /*IE8のみ適用*/
}

body > iframe {
    display: none;
}

a:link { color:#000; text-decoration:none;}
a:visited {color:#000; text-decoration:none;}
a:hover {color:#000; text-decoration: none;}

a,
a::before,
a::after {
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

input, button, select, textarea {
    -webkit-appearance: none;
}
button[type="submit"],
button[type="button"] {
    border-radius: 0;
    -webkit-webkit-box-sizing: content-box;
    -webkit-webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
    font-family:'Noto Sans Japanese',sans-serif;
}
button[type="submit"]::-webkit-search-decoration,
button[type="button"]::-webkit-search-decoration {
    display: none;
}
button[type="submit"]::focus,
button[type="button"]::focus {
    outline-offset: -2px;
}
button[type="submit"].clear,
button[type="button"].clear {
    width: 216px;
    height: 57px;
    color: #000;
    font-size: 17px;
    font-weight: 500;
    background: #f1f1f1;
    border: none;
    border-radius: 5px;
    box-shadow: 0 6px 0 #afafaf;
}
button[type="submit"].send {
    width: 216px;
    height: 57px;
    color: #fff;
    font-size: 17px;
    font-weight: 500;
    background: #F39C12;
    border: none;
    border-radius: 5px;
    box-shadow: 0 6px 0 #C27D0E;
}

input[type=radio],input[type=checkbox]{
    display: none;
}
input[type=radio]:checked + label{
    padding: 9px;
    background: #FDEBD0;
    border: 2px solid #F39C12;
}
input[type="checkbox"]:checked + label {
    padding: 16px 19px ;
    background: #FDEBD0;
    border: 2px solid #F39C12;
}
label:hover {
    cursor: pointer;
}

/* -----
/* =================================================================================================================== */

#navi ul li a,
#key_top p {
	font-family: 'Open Sans', Arial, Roboto, "Droid Sans", "游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
}

#wrap {
	width:100%;
	margin:0 auto;
	font-size:14px;
}

#header {
	width:960px;
	height:78px;
	margin:0 auto;
}
#header #logo {
	padding:24px 0 0 0;
	float:left;
}
#header #logo img {
	width:200px;
}
#header #tel {
	padding:20px 0 0 48px;
	float:right;
	position:relative;
}
#header #tel i {
	background:#F39C12;
	width:38px;
	height:38px;
    border-radius:5px;
	position:absolute;
	top:20px;
	left:0;
	color:#fff;
	font-size:25px;
	line-height:36px;
	text-align:center;
}
#header #tel strong {
	width:100%;
	padding-top:2px;
	display:block;
	float:left;
	font-size:22px;
	font-weight:bold;
	line-height:22px;
	letter-spacing:2px;
}
#header #tel span {
	display:block;
	font-size:10px;
}
#header #bar {
	display:none;
}

#navi {
	height:60px;
	display:block;
	margin-bottom:20px;
	border-top:1px solid #DDDDDD;
	border-bottom:1px solid #DDDDDD;
}
#navi ul {
	width:960px;
	height:60px;
	margin:0 auto;
	position:relative;
}
#navi ul li {
	width:50%;
	float:left;
	text-align:center;
	position:relative;
}
#navi ul li a {
	height:40px;
	display:block;
	padding-top:20px;
	font-size:14px;
	font-weight:600;
	letter-spacing:2px;
}
#navi ul li a span {
	display:block;
	color:#797979;
	font-size:11px;
	font-weight:normal;
	line-height:8px;
	letter-spacing:0px;
}
#navi ul:after,
#navi ul li a:after {
	content:"";
	width:0px;
	height:40px;
	display:block;
	border-right:1px solid #DDDDDD;
	position:absolute;
	top:10px;
}
#navi ul:after {
	left:0;
}
#navi ul li a:after {
	right:0;
}

#container {
    width: 960px;
	min-height:700px;
    display: block;
    margin: 0 auto;
	padding-bottom:50px;
    position: relative;
}

#footer {
	background:#F0F3F5;
	height:60px;
	color:#797979;
	text-align:center;
	line-height:60px;
}
#footer a {
	color:#797979;
	text-decoration:underline;
}
#footer span {
	padding:0 10px;
}

#copy {
	padding:20px 0;
	color:#999999;
	font-size:10px;
	text-align:center;
}

/* 
---------------------------------------------- */

#key_top,
#key {
	background:#cc0000;
	width:960px;
	height:400px;
	margin-bottom:20px;
	position:relative;
	overflow:hidden;
}
#key {
	height:200px;
}
#key_top img,
#key img {
	width:960px;
}
#key_top p {
    background-color: rgba(255,255,255,0.5);
	width:960px;
	height:140px;
	position:absolute;
	top:130px;
	font-size:28px;
	font-weight:bold;
	text-align:center;
	line-height:140px;
	letter-spacing:1px;
}
#key p {
	background: -moz-linear-gradient(to right, rgb(243, 156, 18), transparent);
	background: -webkit-linear-gradient(to right, rgb(243, 156, 18), transparent);
	background: linear-gradient(to right, rgb(243, 156, 18), transparent);
	width:1500px;
	height:40px;
	position:absolute;
	bottom:20px;
	left:0;
	color:#ffffff;
	font-weight:bold;
	text-indent:20px;
	line-height:38px;
	letter-spacing:1px;
}

h2 {
	margin-bottom:20px;
	font-size:18px;
	font-weight:bold;
}
h2 i {
	margin-right:10px;
	color:#F39C12;
}

#news {
	border-top:1px solid #F39C12;
	margin-bottom:50px;
	padding-top:1px;
}
#news dl {
	width:960px;
	min-height:10px;
}
#news dl:nth-child(odd){
	background:#F0F3F5;
}
#news dl:nth-child(even){
	background:#FAFAFA;
}
#news dl dt {
	width:100px;
	display:block;
	float:left;
	padding:15px 15px;
	color:#999999;
	font-weight:bold;
}
#news dl dd {
	width:800px;
	display:block;
	float:left;
	padding:15px 0px;
}
#news dl:after {
	content:"";
	display:block;
	clear:both;
}

#services {
}
#services ul {
}
#services ul li {
	width:210px;
	height:210px;
	display:block;
	float:left;
	margin:0 20px 20px 0;
}
#services ul li a {
	height:165px;
	display:block;
	padding:5px 15px 20px;
	border:10px solid #EDEDED;
    border-radius:5px;
	text-align:center;
}
#services ul li a span {
	width:160px;
	height:70px;
	display:table-cell;
	vertical-align:middle;
	line-height:20px;
}
#services ul li a img {
	height:95px;
}
#services ul:after {
	content:"";
	display:block;
	clear:both;
}

/* 
---------------------------------------------- */

#lp {
}
#lp p {
	padding:10px;
}
#lp p strong {
	color:#F39C12;
	font-size:18px;
	font-weight:bold;
	line-height:40px;
}
#lp p strong i {
	width:30px;
	margin-right:5px;
	text-align:center;
	color:#999;
	font-size:20px;
	line-height:30px;
}

#lp_item {
}
#lp_item img {
	float:left;
	margin:10px 30px 50px 10px;
}
#lp_item p.lp_item_name {
	font-size:20px;
	font-weight:bold;
}
#lp_item p span {
	color:#F39C12;
	font-size:20px;
	font-weight:bold;
}

#lp_flow {
	text-align:center;
	margin-bottom:20px;
}
#lp_flow div {
	margin:5px 50px;
	padding:10px 0;
	border:1px solid #ccc;
	border-radius: 5px;
}
#lp hr {
	border:none;
	border-bottom:1px solid #D2D2D2;
}

.lp_note {
	color:#999999;
	font-size:12px;
}

/* 
---------------------------------------------- */

#notation {
	padding:0 20px;
}
#notation p {
	margin-bottom:10px;
}
#notation .notation_title {
	text-align:center;
	font-weight:bold;
	font-size:18px;
}
#notation .notation_text {
	padding:0 0 0 20px;
}
#notation .notation_text strong {
	text-indent:-20px;
	display:block;
	font-weight:bold;
}
#notation .notation_end {
	text-align:right;
}
#notation table {
	width:100%;
	margin:30px auto 0;
}
#notation table tr:nth-child(odd) th,
#notation table tr:nth-child(odd) td {
	background:#EDEDED;
}
#notation table th {
	width:30%;
	padding:10px;
}
#notation table td {
	width:70%;
	padding:10px;
}

/* 
---------------------------------------------- */

/* 打消し */
#contact input[type=radio] {
	display:inline-block;
	-webkit-appearance: radio;
}
#contact input[type=checkbox]{
	display:inline-block;
	-webkit-appearance: checkbox;
}

/*　ユニーク */
#contact {
}
#contact p {
	margin-bottom:20px;
}
#contact .form {
	width:50%;
	float:left;
	margin-bottom:20px;
}
#contact .form dt {
	font-weight:bold;
}
#contact .form dt span {
	color:#5D5C59;
	font-weight:normal;
}
#contact .form dd {
	padding-top:10px;
	color:#5D5C59;
}
#contact .form dd span {
	margin-right:10px;
	color:#5D5C59;
}
#contact .form dd input[type="text"] {
	width:140px;
	height:50px;
	margin-right:10px;
	border:1px solid #DCD9D3;
	border-radius: 5px;
	box-sizing: border-box;
	text-indent:15px;
}

/* radio,checkbox */
#contact .form label {
	width:45%;
	display:inline-block;
	line-height:30px;
}
#contact .form .contacttype label {
	width:23%;
	height:90px;
	margin:0 2% 0 0;
	display:block;
	float:left;
	border:1px solid #DCD9D3;
	border-radius: 5px;
	box-sizing: border-box;
	font-weight:bold;
	line-height:90px;
	text-indent:10px;
	text-align:center;
}
#contact .form .contacttype li:last-child label {
	margin-right:0;
}
#contact .form .contacttype label input {
	margin-right:10px;
}

/* クラス */
#contact .form.form_ymd input[type="text"] {
	width:90px;
}
#contact .form.form_mail input[type="text"] {
	width:180px;
}
#contact .form.form_tel input[type="text"] {
	width:110px;
}
#contact .form.form_addr input[type="text"] {
	width:100%;
}
#contact .form.form_full {
	width:100%;
}

/* 表示切替内 */
#contact #aplly_kind02 p {
	width:100%;
	display:block;
	float:left;
}
#contact #aplly_kind02 .form label {
	line-height:50px;
}

/* 送信部分 */
#contact .form_submit {
	clear:both;
	padding-top:30px;
	text-align:center;
}
#contact .form_submit button,
#contact .form_submit input {
	background:#F29D14;
	height:46px;
	margin:0 20px;
	padding:0 30px;
	border:none;
	border-radius: 46px;
	box-sizing: border-box;
	color:#fff;
	font-weight:bold;
}
#contact .form_submit button {
	background:#DCD9D3;
}

/* =========================================================================================
// SP（320px～667px）
========================================================================================= */
@media screen and (max-width: 667px) {

/* -----
/* =================================================================================================================== */

#wrap {
	width:100%;
	margin:0 auto;
	font-size:14px;
	position:relative;
}

#header {
	width:100%;
	height:auto;
	margin:0 auto;
}
#header #logo {
	padding:20px 0 20px 10px;
	float:none;
}
#header #logo img {
	width:150px;
}
#header #tel {
	padding:0;
	float:none;
	position:absolute;
	top:14px;
	right:58px;
}
#header #tel i {
	background:#F39C12;
	width:38px;
	height:38px;
    border-radius:5px;
	position:static;
	top:auto;
	left:auto;
	color:#fff;
	font-size:25px;
	line-height:36px;
	text-align:center;
}
#header #tel strong {
	display:none;
}
#header #tel span {
	display:none;
}
#header #bar {
	display:block;
	position:absolute;
	top:14px;
	right:10px;
}
/* #header #bar i { */
#header #bar {
	background:#F39C12;
	width:38px;
	height:38px;
    border-radius:5px;
	color:#fff;
	font-size:25px;
	line-height:40px;
	text-align:center;
}
#header #bar i:first-child {
	display:none;
}

#navi {
	width:100%;
	display:none;
	border-top:1px solid #DDDDDD;
	position:absolute;
	top:66px;
	left:0;
	z-index:100;
}
#navi ul {
	width:100%;
	height:auto;
	margin:0 auto;
	position:relative;
}
#navi ul li {
	width:100%;
	float:none;
	text-align:center;
	position:relative;
	background:#ffffff;
	border-bottom:1px solid #DDDDDD;
}
#navi ul li a {
	height:40px;
	display:block;
	padding-top:20px;
	font-size:14px;
	font-weight:600;
	letter-spacing:2px;
}
#navi ul li a span {
	display:block;
	color:#797979;
	font-size:11px;
	font-weight:normal;
	line-height:8px;
	letter-spacing:0px;
}
#navi ul:after,
#navi ul li a:after {
	display:none;
}

#container {
    width: 100%;
	min-height:auto;
    display: block;
    margin: 0 auto;
	padding-bottom:30px;
    position: relative;
}

#footer {
	background:#F0F3F5;
	height:auto;
	color:#797979;
	text-align:center;
	line-height:60px;
	border-top:1px solid #DDDDDD;
}
#footer a {
	display:block;
	border-bottom:1px solid #DDDDDD;
	color:#797979;
	text-decoration:none;
}
#footer span {
	display:none;
}

#copy {
	padding:20px 0;
	color:#999999;
	font-size:10px;
	text-align:center;
}

/* 
---------------------------------------------- */

#key_top,
#key {
	background:#cc0000;
	width:100%;
	height:auto;
	margin-bottom:20px;
	position:relative;
	overflow:hidden;
}
#key {
	height:auto;
}
#key_top img,
#key img {
	width:100%;
}
#key_top p {
    background-color: rgba(255,255,255,0.5);
	width:100%;
	height:100px;
	position:absolute;
	top:50%;
	left:50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	font-size:12px;
	font-weight:bold;
	text-align:center;
	line-height:100px;
	letter-spacing:1px;
}
#key p {
	background: -moz-linear-gradient(to right, rgb(243, 156, 18), transparent);
	background: -webkit-linear-gradient(to right, rgb(243, 156, 18), transparent);
	background: linear-gradient(to right, rgb(243, 156, 18), transparent);
	width:1500px;
	height:40px;
	position:absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	color:#ffffff;
	font-weight:bold;
	text-indent:20px;
	line-height:38px;
	letter-spacing:1px;
}

h2 {
	margin-bottom:20px;
	padding:0 10px;
	font-size:18px;
	font-weight:bold;
}
h2 i {
	margin-right:10px;
	color:#F39C12;
}

#news {
	border-top:1px solid #F39C12;
	margin-bottom:50px;
	padding-top:1px;
}
#news dl {
	width:100%;
	min-height:10px;
}
#news dl:nth-child(odd){
	background:#F0F3F5;
}
#news dl:nth-child(even){
	background:#FAFAFA;
}
#news dl dt {
	background:#F0F3F5;
	width:100%;
	display:block;
	float:none;
	padding:10px 10px;
	color:#999999;
	font-weight:bold;
}
#news dl dd {
	background:#FAFAFA;
	width:100%;
	display:block;
	float:none;
	padding:10px 10px;
}
#news dl:after {
	content:"";
	display:block;
	clear:both;
}

#services {
}
#services ul {
	width:100%;
	padding:0 10px;
    box-sizing: border-box;
}
#services ul li {
	width:100%;
	height:auto;
	display:block;
	float:left;
	margin:0 0 20px 0;
}
#services ul li a {
	height:auto;
	display:block;
	padding:10px 20px 10px;
	border:10px solid #EDEDED;
    border-radius:5px;
	text-align:center;
	position:relative;
}
#services ul li a span {
	width:200px;
	height:70px;
	display:table-cell;
	text-align:left;
	vertical-align:middle;
	line-height:20px;
}
#services ul li a img {
	width:60px;
	height:auto;
	position:absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
#services ul:after {
	content:"";
	display:block;
	clear:both;
}

/* 
---------------------------------------------- */

#lp {
	overflow:scroll;
}
#lp p {
	padding:5px 5px;
	font-size:12px;
}
#lp p strong {
	display:block;
	display:inline;
	color:#F39C12;
	font-size:12px;
	font-weight:bold;
	line-height:10px;
}
#lp p strong i {
	width:20px;
	margin-right:5px;
	text-align:center;
	color:#999;
	font-size:14px;
	line-height:20px;
}

#lp_item {
	text-align:center;
}
#lp_item img {
	height:40px;
	float:left;
	margin:5px 10px 5px 0;
}
#lp_item p {
	text-align:left;
}
#lp_item p.lp_item_name {
	min-height:40px;
	padding-right:30px;
	font-size:14px;
	font-weight:bold;
	line-height:20px;
}
#lp_item p span {
	color:#F39C12;
	font-size:20px;
	font-weight:bold;
}
#lp_item br {
	display:none;
}

#lp_flow {
	text-align:center;
	margin:20px 0 20px;
}
#lp_flow div {
	margin:5px 0px;
	padding:10px 10px;
	border:1px solid #ccc;
	border-radius: 5px;
}
#lp hr {
	border:none;
	border-bottom:1px solid #D2D2D2;
}

.lp_note {
	color:#999999;
	font-size:12px;
}

/* 
---------------------------------------------- */

#notation {
	padding:10px 10px;
}
#notation p {
	margin-bottom:10px;
}
#notation .notation_title {
	text-align:center;
	font-weight:bold;
	font-size:18px;
}
#notation .notation_text {
	padding:0 0 0 5px;
}
#notation .notation_text strong {
	text-indent:-5px;
	display:block;
	font-weight:bold;
}
#notation .notation_end {
	text-align:right;
}
#notation table {
	width:100%;
	margin:-10px auto 0;
}
#notation table tr:nth-child(odd) th {
	background:#EDEDED;
}
#notation table tr:nth-child(odd) td {
	background:#fff;
}
#notation table th {
	background:#EDEDED;
	width:100%;
	display:block;
	padding:10px;
    box-sizing: border-box;
}
#notation table th br {
	display:none;
}
#notation table td {
	background:#fff;
	width:100%;
	display:block;
	padding:10px;
    box-sizing: border-box;
}

/* 
---------------------------------------------- */

/*　ユニーク */
#contact {
	padding:0 10px;
}
#contact p {
}
#contact .form {
	width:100%;
	float:none;
}
#contact .form dt {
}
#contact .form dt span {
}
#contact .form dd {
}
#contact .form dd span {
	margin-right:10px;
}
#contact .form dd input[type="text"] {
	width:110px;
	height:50px;
	margin-right:10px;
}

/* radio,checkbox */
#contact .form label {
	width:100%;
}
#contact .form .contacttype label {
	width:100%;
	margin:0 0 10px 0;
	float:none;
}
#contact .form .contacttype li:last-child label {
}
#contact .form .contacttype label input {
}

/* クラス */
#contact .form.form_ymd input[type="text"] {
	width:60px;
}
#contact .form.form_mail input[type="text"] {
	width:145px;
}
#contact .form.form_tel input[type="text"] {
	width:90px;
}
#contact .form.form_addr input[type="text"] {
}
#contact .form.form_full {
}

/* 表示切替内 */
#contact #aplly_kind02 p {
}
#contact #aplly_kind02 .form label {
	width:45%;
	line-height:50px;
}

/* 送信部分 */
#contact .form_submit {
}
#contact .form_submit button,
#contact .form_submit input {

}
#contact .form_submit button {
}

/* =================================================================================================================== */

}
