@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&subset=japanese");
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 {
margin: 0;
padding: 0;
}
html {
-webkit-text-size-adjust: 100%;
}
h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: normal;
}
ul, ol {
list-style: none;
}
button, input, select, textarea {
margin: 0;
}
html, * {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
*, ::before, ::after {
background-repeat: no-repeat;
box-sizing: inherit;
}
img, embed, iframe, object, audio, video {
height: auto;
max-width: 100%;
}
img {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
vertical-align: bottom;
}
iframe {
border: 0;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
td, th {
padding: 0;
text-align: left;
}
article, aside, figcaption, figure, footer, header, main, nav, section {
display: block;
}
a {
background-color: transparent;
-webkit-text-decoration-skip: objects;
}
a.under {
color: #0033cc;
text-decoration: underline;
font-weight: 500;
}
a:active, a:hover {
outline-width: 0;
}
.fixed {
position: fixed;
top: 0;
left: 0;
width: 100%;
z-index: 100;
}
hr{
border-top:1px solid #eee;
}

/* ===================================================================
utility
=================================================================== */
.mt05 {
margin-top: 5px;
}
.mt10 {
margin-top: 10px;
}
.mt20 {
margin-top: 20px;
}
.mt30 {
margin-top: 30px;
}
.mt40 {
margin-top: 40px;
}
.mt50 {
margin-top: 50px;
}
.mt60 {
margin-top: 60px;
}
.bg-white{
background:#fff;
}
.bg-gray{
background:#f4f4f4;
}
.text-gray{
color:#666666;
}
.text-center{
text-align:center;
}
.mx-auto{
margin:0 auto
}
.font-weight-700{
font-weight:700;
}
@media only screen and (min-width: 768px) {
.sp_only {
display: none !important;
}
}
@media only screen and (max-width: 767px) {
.pc_only {
display: none !important;
}
.sp_only {
display: block !important;
}
}

/* ===================================================================
btn
=================================================================== */
button, input, optgroup, select, textarea {
margin: 0;
font: inherit;
color: inherit;
}
button {
overflow: visible;
font-weight:500;
}
button, select {
text-transform: none;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
cursor: pointer;
}
button::-moz-focus-inner, input::-moz-focus-inner {
padding: 0;
border: 0;
}

@media only screen and (max-width: 767px) {
.header_menu {
position: absolute;
width: 55px;
height: 55px;
top: 0;
right: 0;
padding: 11px 0 0 12px;
z-index: 20;
}
}
body {
background: #fff;
font-size: 16px;
color: #333;
font-family: "Noto Sans JP", sans-serif;
-webkit-font-smoothing: antialiased;
line-height: 1.7;
}
.header_txt {
font-size: 12px;
margin-left: 20px;
color:#888;
}
a {
color: #333;
}
a:hover {
color: #333;
text-decoration: none;
}
a, a img {
-moz-transition: 0.3s;
-webkit-transition: 0.3s;
-o-transition: 0.3s;
-ms-transition: 0.3s;
transition: 0.3s;
}
a img:hover {
filter: alpha(opacity=75);
-moz-opacity: 0.75;
opacity: 0.75;
}
h2.w-ttl {
font-size: 28px!important;
color: #000000;
text-align: center;
font-weight: 500;
letter-spacing: 2px;
}
.balloon1 {
position: relative;
}
.balloon1:before {
content: "";
position: absolute;
top: 100%;
left: 50%;
margin-left:-100px;
border: 100px solid transparent;
border-top: 65px solid #fff;
}

@media only screen and (max-width: 767px) {
h2.w-ttl {
font-size: 23px!important;
letter-spacing: 1px;
}
.balloon1:before {
margin-left: -50px;
border: 50px solid transparent;
border-top: 30px solid #fff;
}
.balloon2 {
font-size: 16px;
}
}
.page_top {
display: none;
position: fixed;
bottom: 20px;
right: 20px;
z-index: 10;
width: 60px;
height: 60px;
background: rgba(102, 102, 102, 0.6);
text-align: center;
color: #fff;
font-size: 30px;
text-decoration: none;
border-radius: 50%;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
-o-border-radius: 50%;
-ms-border-radius: 50%;
-moz-transition: 0s;
-webkit-transition: 0s;
-o-transition: 0s;
-ms-transition: 0s;
transition: 0s;
}
.page_top:hover {
background: #333;
color: #fff;
}
.page_top::after {
content: "⇑";
position: absolute;
top: 50%;
left: 0;
right: 0;
margin: -26px auto 0;
z-index: 2
}
@media only screen and (max-width: 767px) {
.page_top {
bottom: 10px;
right: 10px;
width: 40px;
height: 40px;
font-size: 22px;
}
.page_top::after {
margin: -17px auto 0;
}
}
.header {
width: 100%;
position: fixed;
z-index: 1000;
top: 0;
left: 0;
background: #ffffff;
box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.3);
-webkit-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.3);
-moz-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.3);
}
.inner {
width: 1040px;
margin: 0 auto;
}
.header .inner {
padding: 0px 10px;
height: 78px;
position: relative;
display: flex;
align-items: center;
}
.header .header_tel {
margin-left: auto;
margin-right: 20px;
}
.header .pl{
margin-left:8px;
}
@media only screen and (max-width: 767px) {
.header {
background: rgba(255, 255, 255, 0.85);
}
.inner {
width: 80%;
}
.header .inner {
height: 55px;
}
h1 {
width: 90px;
}
.header .header_tel_sp, .header .header_btn_sp,.header .header_btn_line_sp {
position: absolute;
top: 0;
width: 55px;
height: 55px;
}
.header .header_btn_sp {
right: 0px;
background: #ea7d7d;
border-right: 1px solid #fff;
}
.header .header_tel_sp {
right: 110px;
background: #aa9865;
border-right: 1px solid #fff;
}
.header .header_btn_line_sp{
right: 55px;
background: #b5b5b5;
border-right: 1px solid #fff;
}
}
#contact {
margin-top: -55px;
padding-top: 55px;
}
@media only screen and (max-width: 576px) {
.inner {
width: 100%;
}
}

/* ===================================================================
TOP&fv
=================================================================== */
.top{
margin-top: 76px;
}
.fv {
background: url(https://www.kra.co.jp/wp-content/themes/kra/lp-image/fv_bg2.jpg) no-repeat center center;
}
.fv .inner {
height: 610px;
position: relative;
}
.fv .inner img{
position: absolute;
display:block;
top: 0;
bottom:0;
left:0;
right:0;
margin:auto;
z-index: 2;
}

@media only screen and (max-width: 767px) {
.top{
margin-top: 55px;
}
.fv .inner {
height: 310px;
}
.fv .inner img{
width:90%;
}
.fv {
background-size: cover;
}
}
/* ===================================================================
section01
=================================================================== */
.section01 {
padding:45px 0 40px;
}
.section01-title{
font-size:21px;
}

@media only screen and (max-width: 767px) {
.section01 {
padding:35px 0 30px;
}
.section01 h2 img{
width:90%;
}
.section01-title{
font-size:15px;
line-height:1.5;
}
}

/* ===================================================================
section03
=================================================================== */
.section03 {
padding: 90px 0 100px;
letter-spacing:1.7px;
}
.section03 .wrap{
padding:70px;
}
.section03 .item{
display:flex;
}
.section03 h3 {
font-size:26px;
line-height:1.7;
margin-bottom:35px;
}
.section03 .inner1{
flex-basis: 50%;
padding-right:70px;
}
.section03 .inner2{
flex-basis: 50%;
}
.section03 .txt p{
font-size:16px;
line-height:2;
}
.section03 .txt p span {
background: linear-gradient(transparent 60%, #FCF6B1 60%);
color: #000;
font-weight:500;
}
.section03 hr{
margin-top:50px;
margin-bottom:50px;
}

@media only screen and (max-width: 767px) {
.section03 .inner {
padding: 0px 15px;
}
.section03 h2 img {
width:270px;
}
.section03 .wrap{
padding:25px 20px;
}
.section03 .item{
display:block;
}
.section03 .inner1{
padding-right:0px;
margin-bottom:25px;
text-align:center;
}
.section03 .inner1 img{
max-width:380px;
margin:0 auto;
}
.section03 {
padding: 50px 0 50px;
}
.section03 hr{
margin-top:25px;
margin-bottom:35px;
}
.section03 h3 {
font-size:19px;
line-height:1.6;
margin:18px 0;
}
.section03 .txt p{
font-size:15px;
line-height:1.6;
}
}
@media only screen and (max-width: 576px) {
.section03 .inner1 img{
width:100%;
margin:0 auto;
}
}

/* ===================================================================
section06
=================================================================== */

.section06{
padding-bottom:35px;
}
.section06 .wrap {
display: flex;
flex-wrap : wrap;
}
.section06 .wrap .item {
text-align: center;
padding: 13px;
flex-basis: 33%;
}
.section06 .item-inner{
position:relative;
}
.section06 .wrap .item img {
display: block;
}
.section06 .wrap .item .txt {
box-shadow: 3px 3px 3px #cccccc;
border: 1px solid #ffffff;
}
.section06 .wrap .item .txt span {
color: #d14249;
}
.section06 .wrap .item .shop-title {
position: absolute;
bottom:0;
left:0;
padding: 4px 0px;
width: 100%;
color: #ffffff;
font-size: 13px;
background: rgba(153,153,153,0.7);
text-align: center;
z-index: 1;
font-weight:700;
border-right: 1px solid #ffffff;
border-left: 1px solid #ffffff;
border-bottom: 1px solid #ffffff;
}

@media only screen and (max-width: 767px) {
.section06 .wrap {
padding:0 10px;
}
.section06 .wrap .item {
text-align: center;
padding: 3px;
flex-basis: 50%;
}
.section06 .wrap .item .txt {
box-shadow: 0px 0px 0px #cccccc;
border: 1px solid #ffffff;
}
.section06 .wrap .item .shop-title {
position: static;
padding: 2px 0px;
font-size: 10px;
}
.section06 .wrap .item:last-of-type {
display:none;
}
}

/* ===================================================================
cv_section
=================================================================== */
.cv_section {
padding: 25px 0 45px;
text-align: center;
}
.cv_section .inner .content {
padding-top: 15px;
}
.cv_section .border{
border-top:1px dotted #cccccc;
padding-top:25px;
width:90%;
margin:0 auto;
}
.cv_section .content .item {
display: inline-block;
vertical-align: middle;
margin:0 10px;
}
.cv_section p {
margin-top: 15px;
font-size: 16px;
}
.cv_section-mg{
margin:25px 0;
}
@media only screen and (max-width: 767px) {
.cv_section .inner .content {
padding-top: 8px;
}
.cv_section {
padding: 10px 0 25px;
}
.cv_section .border{
padding-top:15px;
}
.cv_section .content .item {
display: block;
margin:0 0 15px;
}
.cv_section .content .item:first-child {
margin:0 0 20px;
}
.top .cv_section p {
font-size: 15px;
}
}

/* ===================================================================
section09
=================================================================== */
.section09 {
padding: 70px 0 90px;
background: url(https://www.kra.co.jp/wp-content/themes/kra/lp-image/section09_bg.jpg) no-repeat center;
background-size: cover;
}
 .section09 .wrap {
width: 860px;
margin: 45px auto 0;
background: rgba(255, 255, 255, 0.85);
padding:25px 50px;
}

.section09 table{
width:100%;
}
.section09 table th,.section09 table td{
padding:20px 0px;
}
.section09 table th {
font-size: 16px;
font-weight: 500;
color: #000000;
}
.section09 table td{
font-size: 15px;
}
.section09 table tr {
border-bottom:1px dotted #ccc;
}

.top .section09 .step {
background: linear-gradient(to bottom, #ddbf72 50%, #c4a65b 51%, #c4a65b 51%);
display: inline-block;
color: #fff;
line-height: 26px;
padding: 0 8px;
font-weight: 700;
border-radius: 2px;
}

@media only screen and (max-width: 767px) {
.section09 table td,.section09 table th {
display:block;
width:100%;
}
.section09 table th {
padding:22px 0px 0px;
}
.section09 table td {
padding:10px 0px 22px;
}
.section09 {
padding: 40px 15px 40px;
}
.top .section09 .step {
line-height: 24px;
font-size: 14px;
}
.section09 .wrap {
width: 100%;
margin: 25px auto;
padding:0px 18px 20px;
}
}

/* ===================================================================
contact
=================================================================== */
.contact {
padding: 70px 0 50px;
}
.contact .form_section {
width: 900px;
margin: 20px auto 0px;
}
.contact .form_section .term {
margin-top: 20px;
border: 1px solid #ddd;
padding: 20px;
}
.contact .form_section .term p {
margin-top: 15px;
font-size: 14px;
line-height:2;
}
.contact .form_section table th{
font-weight: 500;
}
@media only screen and (max-width: 767px) {
.contact {
padding: 40px 15px 30px;
}
.contact .form_section {
width: 100%;
margin: 0px auto 0px;
}
}

/* ===================================================================
footer
=================================================================== */
.footer {
background: #bbb;
}
.footer .inner {
padding: 70px 0 40px;
text-align: center;
}
.company-link{
display:flex;
align-items:center;
justify-content:center;
display:flex;
max-width:400px;
padding:30px;
}
.company-link img{
width:125px;
height:51px;
margin-right:30px;
}
.company-link a{
text-decoration:none!important;
font-weight:500;
}
.footer .copyright {
margin-top: 40px;
color: #fff;
font-size: 12px;
font-weight:700;
}
@media only screen and (max-width: 767px) {
.footer .inner {
padding: 25px 10px;
}
.company-link img{
width:100px;
height:41px;
}
.footer .copyright {
margin-top: 25px;
}
}

/* ===================================================================
form
=================================================================== */
input {
line-height: normal;
}
textarea {
overflow: auto;
}
.form_section table {
border: 1px solid #ccc;
width: 100%;
}
.form_section table th, .form_section table td {
padding: 20px;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}
.form_section table th {
width: 280px;
background: #f5f5f5;
position: relative;
}
.form_section table td {
background: #fff;
}
.form_section span.require{
display: inline-block;
color: #fff;
font-size: 10px;
letter-spacing: 0.07em;
padding: 2px 8px;
position: absolute;
top: 50%;
right: 15px;
margin-top: -12px;
font-weight:700;
}
.form_section span.require {
background: #d14249;
}
.form_section [type=check], .form_section [type=radio], .form_section [type=submit] {
cursor: pointer;
}
.form_style {
padding: 1em;
border: 1px solid #ccc;
border-radius: 3px;
width: 100%;
font-size: 15px;
}
.form_section textarea {
height: 200px;
}
.form_section [type=submit] {
display: block;
border: 1px solid #ddbf72;
background: #ceab55;
color: #fff;
padding: 20px 100px;
text-align: center;
font-size: 18px;
margin: 25px auto;
-moz-transition: 0.3s;
-webkit-transition: 0.3s;
-o-transition: 0.3s;
-ms-transition: 0.3s;
transition: 0.3s;
}
.form_section ::input-placeholder {
color: #bbb;
}
span.wpcf7-list-item {
display: block;
margin:5px 0;
}
@media only screen and (min-width: 769px) {
.form_section [type=submit]:hover {
filter: alpha(opacity=75);
-moz-opacity: 0.75;
opacity: 0.75;
}
}
@media only screen and (max-width: 767px) {
.form_section table {
border-bottom: none;
}
.form_section table th, .form_section table td {
display: block;
width: 100% !important;
border-right: none;
}

.form_section [type=submit] {
background: #ceab55;
color: #fff;
width: 100%;
padding: 20px 10px;
border-radius: 0;
-webkit-appearance: none;
}
}
