@charset "utf-8";

@import url(https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700&display=swap);
@import url(https://fonts.googleapis.com/css?family=Barlow+Condensed:400,500);

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img {
	border:0;
	vertical-align:bottom;
}
address,caption,cite,scode,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul,li {
	list-style:none;
	padding:0;
	margin:0;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym {
	border:0;
}
*, *::before, *::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

html,
body {
    width: 100%;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 14px;
    color: #333;
    -webkit-text-size-adjust: 100%;
    letter-spacing: 1.3px;
    word-break: break-all;
    background-color: #fff;
}

img {
	max-width: 100%;
}

/* マウスオーバー時の背景色 */

::selection {
    background: #333;
    color: #fff;
}
/* fonticonの調整 */

.fa:before {
    padding-right: 3px;
}

/* fontの個別指定 */

.mincho {
    font-family: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
.en {
    font-family: 'Barlow Condensed', sans-serif;
}

/* 各種ボタンのリセット */

button[type="submit"],
input[type="submit"],
input[type="button"] {
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    box-sizing: border-box;
    cursor: pointer;
}

button[type="submit"]::-webkit-search-decoration,
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}

button[type="submit"]::focus,
input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px;
}


/* module
----------------------------------------------------*/

.mb {
    display: none !important;
}

.mod {
    font-weight: bold;
    color: #da1e1e;
}

.fa {
    margin-right: 5px;
}

.p_100 {
    padding: 100px 0px;
}

.p_80 {
    padding: 80px 0px;
}

.p_60 {
    padding: 60px 0px;
}

.p_50 {
    padding: 50px 0px;
}

.p_40 {
    padding: 40px 0px;
}

.p_30 {
    padding: 30px 0px;
}

.p_20 {
    padding: 20px 0px;
}

.p_10 {
    padding: 10px 0px;
}

.p_t_10 {
    padding-top: 10px !important;
}

.p_t_20 {
    padding-top: 20px !important;
}

.p_t_30 {
    padding-top: 30px !important;
}

.p_t_50 {
    padding-top: 50px !important;
}

.p_t_80 {
    padding-top: 80px !important;
}

.p_b_10 {
    padding-bottom: 10px !important;
}

.p_b_20 {
    padding-bottom: 20px !important;
}

.p_b_50 {
    padding-bottom: 50px !important;
}

.p_b_80 {
    padding-bottom: 80px !important;
}

.m_30 {
    margin: 30px 0px !important;
}

.m_t_5 {
    margin-top: 5px !important;
}

.m_t_10 {
    margin-top: 10px !important;
}

.m_t_12 {
    margin-top: 12px !important;
}

.m_t_20 {
    margin-top: 20px !important;
}

.m_t_30 {
    margin-top: 30px !important;
}

.m_t_40 {
    margin-top: 40px !important;
}

.m_t_50 {
    margin-top: 50px !important;
}

.m_b_5 {
    margin-bottom: 5px !important;
}

.m_b_10 {
    margin-bottom: 10px !important;
}

.m_b_12 {
    margin-bottom: 12px !important;
}

.m_b_20 {
    margin-bottom: 20px !important;
}

.m_b_30 {
    margin-bottom: 30px !important;
}

.m_b_40 {
    margin-bottom: 40px !important;
}

.m_b_50 {
    margin-bottom: 50px !important;
}

.m_b_60 {
    margin-bottom: 60px !important;
}

.m_l_5 {
    margin-left: 5px !important;
}

.m_r_5 {
    margin-right: 5px !important;
}

.m_r_10 {
    margin-right: 10px !important;
}

.m_r_20 {
    margin-right: 20px !important;
}

.m_r_30 {
    margin-right: 30px !important;
}

.m_r_50 {
    margin-right: 50px !important;
}

.m_l_10 {
    margin-left: 10px !important;
}

.m_l_30 {
    margin-left: 30px !important;
}

.m_l_50 {
    margin-left: 50px !important;
}

.flex_in {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}

.fl_l {
    float: left !important;
}

.fl_r {
    float: right !important;
}

.overflow {
    overflow: hidden;
}

.fixed {
    position: fixed;
    top: 0px;
    z-index: 9999;
}

.table {
    display: table;
}

.clearfix {
    display: inline-block;
    min-height: 1%;
    display: block;
    overflow: hidden;
}

.bg_blue {
    background-color: #178fbc !important;
}

.color_green {
    color: #239260 !important;
}

.color_blue {
    color: #2fa5cc !important;
}

.color_red {
    color: #FF3D3D !important;
}

.color_yellow {
    color: #FEFF2A !important;
}

.color_orange {
    color: #E17A14 !important;
}

.color_white {
    color: #fff !important;
}

.bold {
    font-weight: bold !important;
}

.b_red {
    font-weight: bold !important;
    color: #FF3D3D !important;
}

.t_left {
    text-align: left !important;
}

.t_right {
    text-align: right !important;
}

.t_center {
    text-align: center !important;
}

.f_size26 {
    font-size: 26px !important;
}

.f_size24 {
    font-size: 24px !important;
}

.f_size18 {
    font-size: 18px !important;
}

.f_size16 {
    font-size: 16px !important;
}

.f_size14 {
    font-size: 14px !important;
}

.f_size13 {
    font-size: 13px !important;
}

.f_size12 {
    font-size: 12px !important;
}

.f_size11 {
    font-size: 11px !important;
}

.f_size10 {
    font-size: 10px !important;
}

hr {
    border: none;
    border-bottom: 1px solid #EEE;
}

.p_t_50 {
    padding-top: 50px !important;
}

.b_t_g {
    border-top: 1px solid #EEE;
}

.b_b_g {
    border-bottom: 1px solid #EEE;
}

.cover_yellow {
    background: #F7F7EB;
}

.cover_gray {
    background: #f7f7f7;
}

.cover_light_blue {
    background: #edf0f1;
}
.cover_black {
    background: #333;
}

.cover_navy {
    background: #24313c;
}

.cover_navy .head_title h2,
.cover_navy .imp_subtitle {
    color: #fff;
}

.cover_navy .head_title h2:after {
    background: #fff;
}

hr {
    border: none;
    border-bottom: 1px solid #EEE;
}

.w_80_txt {
    width: 80%;
    margin: 10px auto 0px;
    text-align: center;
}

.w_60_txt {
    width: 60%;
    margin: 10px auto 0px;
    text-align: center;
}

.bd_none {
    border: 0px !important;
}

.w_80 {
    width: 80% !important;
    margin: 0 auto;
}

.w_60 {
    width: 60% !important;
    margin: 0 auto;
}

.w_50 {
    width: 50% !important;
    margin: 0 auto;
}

.w_40 {
    width: 40% !important;
    margin: 0 auto;
}

.none {
    display: none !important;
}


/* fadein
----------------------------------------------------------- */

.fade {
    position: relative;
    transition: 0.8s;
    opacity: 0;
    transform: translate(0, 150px);
    -webkit-transform: translate(0, 150px);
}

.fade_left {
    position: relative;
    transition: 0.8s;
    opacity: 0;
    transform: translateX(150px);
    -webkit-transform: translateX(150px);
}

.fade_right {
    position: relative;
    transition: 0.8s;
    opacity: 0;
    transform: translateX(-150px);
    -webkit-transform: translateX(-150px);
}

.fade_in {
    opacity: 1.0 !important;
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
}


/* lauout
----------------------------------------------------*/

.inner:after,#header #g_navi:after,#content:after,#side:after,ul:after,dl:after,.clear:after,.wrap:after,.contents-box-list:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}

body.archive {
    background: #fff;
}

p {
    font-size: 14px;
    font-weight: 400;
    color: #333;
    line-height: 1.8;
    letter-spacing: 2.5px;
}
.eng p {
    letter-spacing: 0.5px;
    word-break: keep-all;
}

.page-template-page-service-page-template p {
    line-height: 1.6;
}

a {
    color: #2572a0;
    text-decoration: none;
}

a:link {
    color: #2572a0;
}

a:visited {
    color: #9B1818;
    text-decoration: none;
}

a:hover {
    color: #245fbb;
    text-decoration: underline;
}

.area {
    width: 1076px;
    margin: 0 auto;
    padding: 20px 0px;
}

#wrapper {
    margin: 0 auto;
    overflow: hidden;
}

#content {
    margin: 0 auto;
    padding: 50px 0px 0px;
}

.home #content {
    padding-top: 0px;
    background: #fff;
}

#content .in {
    width: 1076px;
    margin: 0 auto;
}

.inner {
    width: 1076px;
    margin: 0 auto;
}

#main {
    float: left;
    width: 776px;
    margin-right: 20px;
    padding: 30px;
    background-color: #fff;
    border-radius: 5px;
}

#main .in {
    width: 716px;
}

.wide #main {
    float: none;
    width: 100%;
}

#side {
    float: left;
    width: 280px;
}

#side_wrap {
    width: 280px;
}

.section {
    clear: both;
    width: 100%;
}


/* スマホの場合は非表示 */

#panel-btn {
    display: none;
}

.share {
    margin-top: 40px;
    padding: 30px 20px;
}

.sns ul {
    margin: 0 auto;
    list-style: none;
}

.sns li a {
    font-size: 75%;
    padding: 10px 2px;
}

.sns li:nth-child(4n) {
    margin-right: 0;
}

.share {
    width: 100%;
}

.share h4 {
    font-size: 120%;
    text-align: center;
}

.sns {
    margin: 0 auto;
    text-align: center;
}

.sns ul {
    list-style: none;
}

.sns li {
    float: left;
    width: 24%;
    margin: 0 1% 1% 0;
}

.sns li a {
    font-size: 110%;
    position: relative;
    display: block;
    padding: 10px;
    color: #fff;
    border-radius: 3px;
    text-align: center;
    text-decoration: none;
    text-shadow: 1px 1px 0 rgba(47, 47, 47, 0.3);
    ;
}

.sns li a:hover {
    -moz-transition-duration: 0.25s;
    -o-transition-duration: 0.25s;
    -webkit-transition-duration: 0.25s;
    transition-duration: 0.25s;
}


/* ツイッター */

.sns .twitter a {
    background: #00acee;
}

.sns .twitter a:hover {
    background: #0092ca;
}


/* Facebook */

.sns .facebook a {
    background: #3b5998;
}

.sns .facebook a:hover {
    background: #2c4373;
}


/* グーグル */

.sns .googleplus a {
    background: #db4a39;
}

.sns .googleplus a:hover {
    background: #ad3a2d;
}


/* はてぶ */

.sns .hatebu a {
    background: #3487c1;
}

.sns .hatebu a:hover {
    background: #12608e;
}


/* LINE */

.sns .line a {
    background: #25af00;
}

.sns .line a:hover {
    background: #219900;
}


/* Pocket */

.sns .pocket a {
    background: #f03e51;
}

.sns .pocket a:hover {
    background: #c0392b;
}


/* RSS */

.sns .rss a {
    background: #ffb53c;
}

.sns .rss a:hover {
    background: #e09900;
}


/* Feedly */

.sns .feedly a {
    background: #87c040;
}

.sns .feedly a:hover {
    background: #74a436;
}


/*	html部品
----------------------------------------------------*/

input {
    font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
    font-size: 15px;
    letter-spacing: 0.5px;
    font-family: 'Noto Sans JP', sans-serif;
}

input[type="search"],
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="tel"],
input.login,
select {
    /*width: 100%;*/
    height: 42px;
    line-height: 1.6;
    padding: 4px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    background-color: white;
    border: 1px solid #dcdcdc;
    -moz-box-shadow: 0 1px 0 white;
    -webkit-box-shadow: 0 1px 0 white;
    box-shadow: 0 1px 0 white;
}

#wrapper table select {
    padding: 0px 4px;
    height: 36px;
    line-height: 1.6;
}

textarea {
    width: 98% !important;
    min-height: 65px;
    padding: 4px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    background-color: white;
    border: 1px solid #dbdbdb;
    -moz-box-shadow: 0 1px 0 white;
    -webkit-box-shadow: 0 1px 0 white;
    box-shadow: 0 1px 0 white;
}

.chk_decision {
    display: none;
}

select[name="pref"] {
    width: 85px !important;
    margin-right: 4px;
}

input[name="addr1"] {
    width: 300px !important;
    margin-right: 4px;
}

input[name="addr2"] {
    width: 212px !important;
}


/* ボタン
---------------------------------*/

.button_y {
    display: inline-block;
    min-width: 200px;
    text-align: center;
    padding: 16px 28px;
    font-size: 14px;
    font-weight: bold;
    color: #fff !important;
    text-decoration: none;
    background-color: #da6f00;
    border: 2px solid #da6f00;
    border-radius: 30px;
    letter-spacing: 1px;
}

.button_y:hover {
    color: #da6f00 !important;
    background-color: #fff;
    text-decoration: none;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.button_n {
	position: relative;
    display: inline-block;
    min-width: 220px;
    text-align: center;
    padding: 16px 80px;
    font-size: 14px;
    font-weight: bold;
    color: #fff !important;
    text-decoration: none;
    background-color: #416583;
    border: 2px solid #416583;
    letter-spacing: 1px;
}

.button_n:hover {
    color: #416583 !important;
    background-color: #fff;
    text-decoration: none;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}
.button_n:before {
    content: "";
    position: absolute;
    margin-top: 4px;
    left: 12%;
    width: 12px;
    height: 12px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.button_n:hover:before {
	border-color: #416583;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

a.link {
    position: relative;
    padding-left: 25px;
}

a.link:before {
    font-family: 'Font Awesome 5 Free';
    content: "\f35d";
    font-weight: 700;
    position: absolute;
    left: 6px;
    top: -1px;
    color: #0084d2;
}

