@charset "utf-8";
/* 出版 */
.wrapper {
background-image: url("../business/publish/img/mainImg.jpg");
background-repeat: no-repeat;
background-position: center top;
margin-top: 50px;
max-width: 100%;
}
.pTitleBox {
max-width: 980px;
margin: 0 auto;
width: 100%;
padding-top: 127px;
}
.sub {
font-family: 'Fjalla One', sans-serif;
font-size: 1.3rem;
color: #fff;
margin-bottom: 30px;
line-height: 100%;
position: relative;
display: inline-block;
padding-left: 40px;
}
.sub:before {
content: '';
position: absolute;
top: 50%;
display: inline-block;
width: 32px;
height: 1px;
background-color: #fff;
}
.sub:before {
 left: 0;
}
h3 {
font-size: 3.0rem;
line-height: 100%;
color: #fff;
letter-spacing: 0.2em;
font-weight: 700;
font-style: normal;
margin-left: 5px;
margin-bottom: 15px;
text-shadow: 2px 2px 1px rgba(0,0,0,0.4);
}
.sub02 {
font-family: 'Fjalla One', sans-serif;
font-size: 1.3rem;
color: #fff;
line-height: 100%;
margin-left: 10px;
}
main {
background-color: #fff;
padding-top: 58px;
position: relative;
margin-top: 142px;
margin-bottom: 40px;
}
.main_inner {
width: 100%;
margin-left: 60px;
padding-right: 60px;
}
.introTxt {
font-family: 'ff-zwo-corr-web-pro', sans-serif;
font-weight: 400;
font-style: normal;
color: #277A44;
font-size: 1.4rem;
margin-bottom: 15px;
}
h4 {
font-family: "Hannari","source-han-serif-japanese";
font-weight: 400;
font-size: 3.0rem;
line-height: 100%;

display: block;
margin-bottom: 60px;
}
.txt01 {
padding-right: 20px;
font-size: 1.5rem;
line-height: 200%;
margin-bottom: 10px;
}
.secGray {
width: 100%;
background-color: #F2F2F2;
padding: 100px 0 10px;
border-top: solid 1px #ddd;
}
.box {
max-width: 980px;
width: 100%;
margin: 0 auto;
}
.sml_title_box {
display: flex;
align-items: flex-start;
margin-bottom: 50px;
}
.sml_num {
font-size: 4.5rem;
margin-right: 2.9vw;
padding-right: 0;
letter-spacing: 0.05em;
line-height: 1.4;
position: relative;
}
.num {
font-family: 'Fjalla One', sans-serif;
color: #287B44;
}
.sml_num:before {
height: 2.928vw;
bottom: -1.464vw;
}
.sml_num:before {
position: absolute;
content: "";
border-left: 1px solid #000;
right: 0;
transform: rotate(
45deg
);
}
.sml_h2 {
font-size: 3.0rem;
letter-spacing: 0.2em;
line-height: 100%;
margin-top: 10px;
}
.sml_h2 .en {
font-size: 1.6rem;
margin-top: 10px;
letter-spacing: 0.05em;
display: block;
color: #999;
line-height: 140%;
font-family: ff-zwo-corr-web-pro, sans-serif;
font-weight: 400;
font-style: normal;
}
.txtBox {
width: 100%;
padding: 0 35px 60px 35px;
border-bottom: solid 1px #ddd;
margin-bottom: 60px;
}
.txtBox p {
font-size: 1.5rem;
line-height: 200%;
letter-spacing: 0.2em;
}
.borderless {
border-bottom: none;
}
.m_buttun_box {
max-width: 260px;
width: 100%;
margin-right: 20px;
}
.m_buttun_box a {
text-decoration: none;
}
.m_btn{
position: relative;
max-width: 260px;
height: 50px;
line-height: 100%;
display: flex;
background: #287B44;
padding-top: 10px;
}
.width_l {
max-width: 420px;
}
.m_buttun_title {
font-size: 1.3rem;
letter-spacing: 0.1em;
}
.m_btn_txt{
width: 100%;
color: #fff;
z-index: 10;
text-align: center;
font-family: 'Fjalla One', 'Noto Sans JP',sans-serif;
font-weight: 400;
letter-spacing: 0;
}
.m_btn_txt:before{
content: "";
position: absolute;
top: 0;
bottom: 0;
width: 0;
display: block;
background: #000;
z-index: -1;
transition: .2s;
}
.m_btn_txt::after{
content: "";
display: block;
position: absolute;
top: calc(50% - 5px);
right: 20px;
width: 8px;
height: 8px;
border: 2px solid;
border-color: transparent transparent #FFF #fff;
transform: rotate(-135deg);
transition: .3s;
}
.m_btn_txt:hover{
color: #fff;
}
.m_btn_txt:hover:before{
width: 100%;
}
.m_btn_txt:hover::after{
right: 10px;
}
.m_buttun_body {
max-width: 980px;
width: 100%;
display: flex;
justify-content: flex-start;
align-items: center;
flex-wrap: wrap;
}

/*　for iPad 横　*/
@media screen and (min-width:980px) and ( max-width:1024px) {
.wrapper {
overflow-x: hidden;
}
}
/*　for iPad 縦　*/
@media screen and (min-width:768px) and ( max-width:979px) {
.wrapper {
overflow-x: hidden;
}
.sml_title_box {
display: flex;
align-items: flex-start;
margin-bottom: 50px;
margin-left: 25px;
}
}

/* IE11にのみ適用したいスタイルシート */
@media screen and (-ms-high-contrast: none) {

.main_inner {
width: 980px;
margin: auto;
background-color: #fff;
padding-top: 58px;
margin-top: 142px;
margin-bottom: 70px;
padding-left: 60px;
}

}


/*スマートフォン*/

@media all and (max-width : 767px ){
.wrapper {
background-image: url("../business/publish/img/mainImg_sp.jpg");
background-repeat: no-repeat;
background-position: center top;
margin-top: 20px;
}
.pTitleBox {
padding-top: 50px;
}
.sub {
font-size: 1.0rem;
color: #fff;
margin-bottom: 15px;
padding-left: 40px;
}
h3 {
font-size: 2.0rem;
margin-left: 40px;

}
.sub02 {
font-size: 1.0rem;
color: #fff;
margin-bottom: 15px;
padding-left: 30px;
}
main {
width: 90%;
padding-top: 20px;
margin-top: 75px;
margin-bottom: 0px;
padding-bottom: 0px;
}
.main_inner {
width: 100%;
margin-left: 10px;
padding-right: 0px;
}
.introTxt {
font-size: 1.0rem;
margin-bottom: 10px;

}
h4 {
font-size: 2.0rem;
margin-bottom: 25px;
line-height: 160%;
}
.txt01 {
padding-right: 10px;
margin-bottom: 30px;
font-size: 1.1rem;
}
.secGray {
width: 100%;
background-color: #F2F2F2;
padding: 40px 0 10px;
}
.box {
max-width: 980px;
width: 90%;
margin: 0 auto;
}
.sml_title_box {
margin-bottom: 15px;
}
.sml_num {
font-size: 2.2rem;
margin-right: 15px;
}

.sml_num:before {
height: 2.928vw;
bottom: -1.464vw;
}

.sml_h2 {
font-size: 2.0rem;
letter-spacing: 0.2em;
line-height: 100%;
margin-top: 10px;
}
.sml_h2 .en {
font-size: 1.2rem;
margin-top: 5px;
}
.txtBox {
width: 100%;
padding: 0px 5px 30px 5px;
margin-bottom: 30px;
}
.txtBox p {
font-size: 1.2rem;
line-height: 200%;
letter-spacing: 0.1em;
}
.borderless {
border-bottom: none;
}
.mb-40 {
margin-bottom: 20px !important;
}
.m_buttun_box {
max-width: 200px;
width: 100%;
margin-right: 20px;
margin-bottom: 10px;
}
.m_btn{
position: relative;
max-width: 200px;
height: 40px;
}
.width_l {
max-width: 320px;
}
.m_buttun_title {
font-size: 1.1rem;
}
.m_btn_txt::after{
top: calc(50% - 2px);
right: 20px;
width: 7px;
height: 7px;
}
}