@charset "utf-8";
/* ------------------------------------------------------------------------------
japan-izm.com
------------------------------------------------------------------------------ */
* {
box-sizing: border-box;
}
/* FontStyle */
strong {
font-weight: bold;
}
em {
font-style: italic;
}
/* LinkColor */
a:link {
color: #00F;
}
/* a:visited {
color: #600;
} */
a:hover {
color: #090;
}
a:focus {
color: #090;
}
a:active {
color: #FF0;
}
/* TableStyle */
table {
border-top: 1px solid #CCC;
border-left: 1px solid #CCC;
border-collapse: collapse;
border-spacing: 0;
}
table th {
padding: 5px;
border-right: 1px solid #CCC;
border-bottom: 1px solid #CCC;
background: #CCC;
}
table td {
padding: 5px;
border-right: 1px solid #CCC;
border-bottom: 1px solid #CCC;
}
table thead {
word-spacing: normal;
}
table tfoot {
word-spacing: normal;
}
table tbody {
word-spacing: normal;
}

/* ---------- ホバー ---------- */
a[href] img,
button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
transition: .3s;
}
a[href]:hover img,
button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="file"]:hover {
cursor: pointer;
opacity: .6;
transition: .3s;
}

/* ---------- フォームまわりデフォルト ---------- */
/* デフォルトスタイルのリセット */
button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
-webkit-appearance: button;
appearance: button;
background-color: transparent;
background-color: #eeeeee;
border: none;
border-radius: 0;
box-sizing: border-box;
cursor: pointer;
/* padding: .5em; */
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="url"],
input[type="date"],
input[type="password"],
textarea,
select {
border: 1px solid #bbc1c5;
cursor: pointer;
padding: .5em;
margin-top: .25em;
margin-bottom: .25em;
}
button:disabled,
input:disabled,
textarea:disabled,
select:disabled {
background-color: #cccccc;
color: #999999;
}

textarea {
border-radius: 0;
height: 8em;
}
select {
display: block;
}


/* ------------------------------------------------------------------------------
Template
------------------------------------------------------------------------------ */
/* --------------------
共通
-------------------- */
header {
display: flex;
justify-content: space-between;
background: #dddddd;
}
#gNavToggle {
display: none;
}
.header-simple {
position: fixed;
top: 0;
left: 0;
z-index: 100;
width: 100%;
height: 75px;
border: 1px solid #bbb;
border-width: 1px 0;
background-color: #fff;
}
.header-table {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.daiken-logo a {
display: block;
min-width: 157px;
height: 0;
padding: 73px 0 0;
overflow: hidden;
background: url(../img/daiken_logo.png) center center no-repeat;
background-size: 122px auto;
line-height: 30em;
}
.daiken-logo a:hover {
background: url("../img/daiken_logo_w.png") center center no-repeat #0081cc;
background-size: 122px auto;
}
.linkact a {
transition: all .3s ease;
opacity: 1;
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}
.pageTitBg {
background-color: #f1f1f1;
}
.pageTit {
color: #333333;
position: relative;
padding: 2.5vw 5.83333vw;
background: #f1f1f1;
font-size: 36px;
font-size: 3.6rem;
}
.pageTit > small {
padding-left: 20px;
color: #898989;
font-size: 12px;
font-size: 1.2rem;
}
.pankuzuWrap {
position: relative;
display: block;
padding-left: 5.83333vw;
padding-top: 6px;
padding-bottom: 6px;
background: #e3e3e3;
}

.pankuzuWrap::after {
position: absolute;
content: "";
bottom: -10px;
left: 0;
width: 100%;
height: 0;
padding-top: 10px;
background: linear-gradient(rgba(0,0,0,.4),rgba(255,255,255,0));
z-index: 50;
}
.pankuzu {
line-height: 2;
font-size: 13px;
font-size: 1.3rem;
}
.pankuzu li {
float: left;
}
.pankuzu li::after {
content: ">";
vertical-align: 0;
margin-left: 10px;
margin-right: 10px;
display: inline-block;
line-height: 1;
font-size: 10px;
font-size: 1.0rem;
}
.pankuzu li:last-of-type::after {
content: none;
}
.pankuzu li a {
color: #0081cc;
text-decoration: underline;
transition: all .2s ease;
}
.pankuzu li a:hover {
text-decoration: underline;
opacity: .7;
}
.main {
display: block;
transition: color .4s ease;
background-color: #fff;
margin-bottom:20px;
}
.mod-head01 {
position: relative;
padding: 2.5vw 5.83333vw;
background: #f1f1f1;
}
.mod-ja, .mod-en {
display: block;
line-height: 1.2;
}
.mod-head01-ja, .mod-head01-en {
display: inline-block;
font-weight: 400;
vertical-align: middle;
}
.mod-head01-ja {
font-size: 36px;
font-size: 3.6rem;
}
.mod-shadow {
position: relative;
}
.mod-topicPath-ul {
padding: 1em;
}
.mod-topicPath-ul li {
display: inline-block;
font-size: 12px;
font-size: 1.2rem;
}
.mod-topicPath-li:after {
vertical-align: 0;
margin-left: 7px;
margin-right: 7px;
display: inline-block;
font-family: daiken-fonts;
font-style: normal;
font-weight: 400;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
content: "\EA06";
font-size: 5px;
font-size: .5rem;
}

.footer-pagetop {
position: fixed;
right: 0;
bottom: 0;
}
.footer-pagetop a {
position: relative;
display: block;
width: 75px;
height: 75px;
padding: 10px 13px;
text-align: center;
background-color: #0081cc;
color: #fff;
line-height: 1;
transition: all .4s ease;
}
.footer-pagetop a::before {
content: "";
position: absolute;
top: 30px;
left: 24px;
display: block;
width: 5px;
height: 5px;
padding: 10px;
border: solid 2px;
border-color: #ffffff #ffffff transparent transparent;
transform: rotate(-45deg);
}
.footer-pagetop a:hover {
opacity: .8;
}

footer {
background: #727171;
position: relative;
text-align: center;
}
.footer-reg {
line-height: 1.4;
padding-top: 4px;
}
.footer-reg {
border-top: solid 1px #fff;
color: #ffffff;
display: block;
font-size: 12px;
font-size: 1.2rem;
margin-top: 80px;
padding-top: 15px;
padding-bottom: 15px;
text-align: center;
}

/* ---------- フォームまわりベース ---------- */
.errTxt {
background: #fbebec;
color: #f34959;
padding: .5em;
margin-bottom: 2em;
}
/* 入力フィールドの長さ調整 */
input[id*="zip"] {
max-width: 200px;
}
input.inpShort {
max-width: 5em;
}
/* ボタンのスタイル */
.btn button,
.btn input {
font-size: 1em;
font-weight: bold;
display: block;
padding: 1em;
margin-left: auto;
margin-right: auto;
margin-bottom: 1em;
width: 80%;
}
.btnDefault button,
.btnDefault input {
background: #777777;
color: #ffffff;
}
.btnPrimary button,
.btnPrimary input {
background: #01b0ed;
color: #ffffff;
}
.btnSecondary button,
.btnSecondary input {
background: #999999;
color: #ffffff;
}

/* ---------- 下層共通 ---------- */
.contents {
max-width: 1200px;
margin: 0 auto;
padding: 0 15px;
}
/* タイトル */
.Catitle {
background: #f1f1f1;
margin-bottom: 45px;
padding: 1em 0;
}
.Catitle h3 {
margin: 0 auto;
text-indent: 15px;
font-size: 26px;
font-size: 2.6rem;
font-weight: bold;  
}
.mTit {
position: relative;
margin-bottom: 30px;
padding-left: 2.5em;
border-bottom: solid 2px #cccccc;
}
.mTit h4 {
line-height: 2em;
font-size: 18px;
font-size: 1.8rem;
font-weight: bold;
}
.mTit h4::before {
content: "";
display: inline-block;
position: absolute;
top: 45%;
left: 0;
width: 15px;
height: 3px;
background-color: #0085cf;
}
.txt {
margin-bottom: 40px;
font-size: 20px;
font-size: 2.0rem;
font-weight: bold;
}
/* フローチャート */
.flow {
background: #f1f1f1;
background-image: linear-gradient(
-45deg,
#f1f1f1 25%,
#d8d8d8 25%, #d8d8d8 50%,
#f1f1f1 50%, #f1f1f1 75%,
#d8d8d8 75%, #d8d8d8
);
background-size: 4px 4px;
display: -webkit-flex;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 30px auto;
padding: 10px 15px;
width: 100%;
}
.flow li {
display: block;
width: 100%;
padding: .5em .7em;
margin-bottom: 10px;
box-sizing: border-box;
vertical-align: middle;
font-weight: bold;
font-size: 16px;
font-size: 1.6rem;
border-radius: 5px;
background-color: #ffffff;
white-space: nowrap;
}
.flow li > span {
margin-right: 10px;
font-size: 12px;
font-size: 1.2rem;
line-height: 15px;
vertical-align: middle;
}
/* 現工程 */
.flow .flowActive {
background-color: #cce7f5;
color: #0085cf;
}
/* 前工程 */
.flow .flowPrev {
background-color: #cccccc;
color: #ffffff;
font-weight: normal;
cursor: pointer;
cursor: hand;
}
/* ボタン周り */
.btnList li {
margin-bottom: 15px;
}
.btn {
max-width: 100%;
text-align: center;
}
.btn a,
.btn button,
.btn input[type="button"],
.btn input[type="submit"],
.btn input[type="reset"] {
display: block;
width: 100%;
padding: 1em 0;
border-radius: 5px;
font-size: 16px;
font-size: 1.6rem;
font-weight: normal;
color: #ffffff;
text-decoration: none;
background-color: #0085cf;
transition: .5s;
}
.btn a:hover,
.btn button:hover,
.btn input[type="button"]:hover,
.btn input[type="submit"]:hover,
.btn input[type="reset"]:hover {
opacity: .7;
transition: .5s;
}
.btn.btnPrimary a,
.btn.btnPrimary input[type="button"],
.btn.btnPrimary input[type="submit"],
.btn.btnPrimary input[type="reset"] {
background-color: #999999;
}

/* キャプション */
.formCaution {
font-size: 16px;
font-size: 1.6rem;
font-weight: bold;
margin-left: auto;
margin-right: auto;
margin-bottom: 35px;
max-width: 1200px;
}
.formCaution01 {
list-style: inside;
text-indent: -16px;
padding-left: 16px;
}
.formCaution02 {
border: solid 1px #000000;
padding: 10px;
margin-bottom: 50px;
}
.formCaution02Title {
color: #dd2211;
font-size: 16px;
font-size: 1.6rem;
font-weight: bolder;
}
.formCaution02Comment {
font-weight: bold;
}
.formCaution02Title02 {
font-weight: bold;
padding: 10px 0 0;
}
.formCaution02Comennt02 {
padding: 0 10px;
}
.formCaution02 ul {
list-style: inside;
margin-left: 16px;
}
/* --------------------
SP用
-------------------- */
@media all and (max-width: 750px) {
.sp {
display: block;
}
.pc {
display: none;
}
.header-simple {
position: static;
height: 54px;
}
.pageTit {
padding-bottom: 4vw;
padding-left:5%;
padding-right:5%;
padding-top:17.3vw;
font-size: 25px;
font-size: 2.5rem;
text-align: left;
}
.pageTit > small {
display: block;
padding-left: 0;
text-align: left;
font-size: 10px;
font-size: 1.0rem;
}
.pankuzuWrap {
display: none;
}
}

/* --------------------
PC用
-------------------- */
@media all and (min-width: 751px) {
.pc {
display: block
}
.sp {
display: none;
}
.header-table {
justify-content: flex-start;
}
.daiken-logo a {
min-width: 189px;
max-width: 210px;
}
/* ---------- 下層共通 ---------- */
/* タイトル */
.pageTitBg {
padding-top: 75px;
}
.Catitle {
padding: 2em 0;
}
.Catitle h3 {
max-width: 1200px;
margin: 0 auto;
}
/* フローチャート */
.flow {
flex-wrap: nowrap;
max-width: 1200px;
margin: 30px auto;
padding: 10px 1.5em;
}
.flow li {
margin-left: 5px;
margin-right: 5px;
max-width: 225px;
height: 50px;
padding: .5em;
}
.flow li > span {
display: block;
}
/* ボタン周り */
.btnList {
display: flex;
flex-direction: row;
justify-content: center;
}
.btnList li {
min-width: 300px;
margin-bottom: 0;
margin-right: 15px;
}
}


/* --------------------
スマホ用ナビゲーション
-------------------- */
@media all and (max-width: 750px) {
#gNavToggle {
background-color: transparent;
cursor: pointer;
display: block;
z-index: 1000;
}
#gNav {
position: fixed;
left: 0;
top: 0;
opacity: 0;
background-color: #ebebeb;
transition: .3s;
width: 100%;
height: 100%;
z-index: -1;
}
#gNav.js-open {
opacity: 1;
transition: .3s;
z-index: 100;
}

.gNavList {
height: 100%;
position: relative;
overflow-x: hidden;
overflow-y: auto;
}
.gNavList li {
margin: 2em;
}
.gNavList li a:hover {
text-decoration: none;
}

/* メニューボタン */
#gNavToggle,
#gNavToggle span {
display: inline-block;
transition: .3s;
}
#gNavToggle {
z-index: 20;
position: relative;
width: 35px;
height: 29px;
}
#gNavToggle span {
position: absolute;
left: 0;
width: 100%;
height: 3px;
background-color: #717171;
}
#gNavToggle span:nth-of-type(1) {
top: 0;
}
#gNavToggle span:nth-of-type(2) {
top: 13px;
}
#gNavToggle span:nth-of-type(3) {
bottom: 0;
}
#gNavToggle.js-active {
z-index: 1000;
}
#gNavToggle.js-active span:nth-of-type(1) {
-webkit-transform: translateY(16px) rotate(-45deg);
transform: translateY(16px) rotate(-45deg);
}
#gNavToggle.js-active span:nth-of-type(2) {
opacity: 0;
}
#gNavToggle.js-active span:nth-of-type(3) {
-webkit-transform: translateY(-16px) rotate(45deg);
transform: translateY(-16px) rotate(45deg);
}
}



