@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:2}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/
body {
	font-size:16px;
	font-family:"游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ",sans-serif;
	color:#352f25;
}

#contents {
	width:100%;
	margin:0 auto;
    display:block;
}

a {
	color:#cc6699;
    text-decoration: none;
}
a:hover {
	color:#d190af; ;
}

h1{
	font-size:32px;
}

h2  {
    margin-top: 50px;
	margin-bottom:20px;
	font-size:36px;
	font-weight: 600;
	position: relative;
	text-align:center;
    font-family: 'Noto Serif JP', serif;
}
@media screen and (max-width: 768px) {
h2{
    margin-top: 30px;
    color:#000000;
    font-size: 28px;
    font-weight: 600;
}
}
img {
	vertical-align:bottom;
}

strong {
	font-weight:bold;
}

pre {
	margin:1em 0;
	padding:1em;
}


dt {
	margin-bottom:0.5em;
	border-bottom:1px dotted #ddd;
}
dd {
	margin-bottom:1em;
}
.mincho{
    font-family: 'Noto Serif JP', serif;
}

/*================================================
 *  ヘッダー
 ================================================*/
header {
	position:fixed;
	top:0;
	z-index:100;
	width:100%;
	background:#ffffff;
	opacity:1;
	filter:alpha(opacity=80);
	-ms-filter:"alpha(opacity=80)";
}

/* グローバルナビゲーション */

header .inner {
	position:relative;
    width:100%;
	margin:0 auto;
    background: #cc6699;
}

header nav {
	overflow:hidden;
	position:absolute;
	top:0;
	right:0;
	padding-top:28px;
}
.logo{
	margin:0px 0 0px 250px;
}
header .inner ul.nav-menu-pc{
    margin:3px 0 0 -10px;
    margin-left: auto;
    margin-right: 250px;
}
header nav li {
	position:relative;
	float:left;
	list-style:none;
	margin:0;
	padding:0 20px;
	font-size:14px;
	letter-spacing: 1px;
	font-family: 'helvetica';
}

header nav li a {
	font-weight:bold;
	color:#ffffff;
	text-decoration:none;
}

header nav li a:hover {
	color:#FFFF9F;
    transition-duration: 0.3s;
}
.inner ul.nav-menu-pc li.contact{
    background: #ffffff;
    border-radius: 15px;
    color:#cc6699;
    
}
.inner ul.nav-menu-pc li.contact:hover{
    background: #FFFF9F;
    border-radius: 15px;
    color:#cc6699;
    transition-duration: 0.3s;
}
.inner ul.nav-menu-pc li.contact a{
    color:#cc6699;
}


@media only screen and (max-width: 1300px) {
    .logo{
        margin:0px 0 0px 100px;
    }
    header .inner ul.nav-menu-pc{
        margin-left: auto;
        margin-right: 100px;
    }
}
@media only screen and (max-width: 945px) {
    .logo{
        margin:0px 0 0px 10px;
    }
    header .inner ul.nav-menu-pc{
        margin-left: 0px;
        margin-right: 0px;
    }
    
}


/*================================================
 *  spメニュー
 ================================================*/


/*ヘッダーまわりはサイトに合わせて調整してください*/
#nav-drawer {
	position:relative;
	float:right;
	margin-top:25px;
	margin-right:20px;
	list-style:none;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 30px;
  height: 22px;
  vertical-align: middle;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 3px;/*線の太さ*/
  width: 25px;/*長さ*/
  border-radius: 3px;
  background: #555;
  display: block;
  content: '';
  cursor: pointer;
}
#nav-open span:before {
  bottom: -8px;
}
#nav-open span:after {
  bottom: -16px;
}

/*閉じる用のカバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  text-align:center;
  top: 86px;
  left: 0;
  z-index: 9999;
  width: 100%;
  max-width: 100%;
  background: #cc6699;
  transition: .3s ease-in-out;
  -webkit-transform: translateX(105);
  transform: translateX(105%);/*左に隠しておく*/
}

#nav-content ul {
	margin:0 0 0 0px;
	padding-left:90px;
	padding-right:90px;
}

#nav-content  li {
	position:relative;
	display: inline; 
	list-style:none;
	margin:0;
	font-size:19px;
	letter-spacing: 1px;
	font-family: 'helvetica';
}

#nav-content  li a {
	display: block; 
	font-weight:bold;
	color:#ffffff;
	padding:20px 0px 20px 0px;
	width:100%
	padding:0 40px;
	border-bottom:solid 1px #FFFFFF;
	text-decoration:none;
}

#nav-content  li:last-child a  {
	display: block; 
	font-weight:bold;
	color:#FFFFFF;
	padding:20px 0px 20px 0px;
	width:100%
	padding:0 40px;
	border-bottom:none;
	text-decoration:none;
}

#nav-content  li a:hover {
	color: #FFFF9F;
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);/*中身を表示（右へスライド）*/

}

@media screen and (min-width:760px) {
  #nav-open {
    display:none;
  }
}
/*================================================
 *  メイン
 ================================================*/
main {
	width:100%;
}

section {
	margin-bottom:10%;
}

.wrapper {
    margin-right: auto; 
    margin-left:  auto;
    max-width: 1000px;
    padding-right: 10px;
    padding-left:  10px;
    padding-bottom: 100px;
    z-index: 1;
}
.center {
    margin:0px auto;
    text-align: center;
    display:block;
}
.pc { display: block !important; }
.tb { display: block !important; }
.sp { display: none !important; }

@media screen and (max-width:760px) {
.wrapper {
  margin-right: auto; 
  margin-left:  auto; 
  padding-right: 40px; 
  padding-left:  40px; }

.pc { display: none !important; }
.sp { display: block !important; }

}

/*================================================
 *  article01 
 ================================================*/

.topimg{
    margin: 150px auto 50px;
    width: 289px;
}

.midashi-pc{
    font-size:30px;
}
.midashi-sp{
    font-size:18px;
}

.article01 {
	padding:0px 0px 0px 0px;
	width:100%;
	background-color:#FFFFFF;
	text-align:center;
}


@media screen and (max-width: 768px) {

    .article01 {
        padding:0px 0px 0px 0px;
        width:100%;
        background-color:#FFFFFF;
        text-align:center;
    }
    .topimg{
        margin: 100px auto 50px;
        width: 289px;
    }

}
/*================================================
 *  article02
 ================================================*/

.article02 {
    display: flex;
    position: relative;
    padding: 50; 0 50; 0;
	width: 100%;
    background-image: url(../images/section02_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;    
    background-position: center;
    text-align:center;
}
.article02::before{
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    mix-blend-mode: multiply;
    background-color: rgba(148,116,59,1);
    opacity: 0.9;
}
h2.article02-title{
    margin-top: 150px;
    color:#ffffff;
    font-size: 54px;
    font-weight: 600;
}
.midashi2-pc{
    font-size:30px;
    color:#ffffff;
    font-weight: 400;
    text-align: center;
}
.midashi2-sp{
    font-size:18px;
    color:#ffffff;
    font-weight: 400;
    text-align: center;
}

hr.article02-hr{
    border: solid 4px #ffffff;
    width: 30%;
    margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
h2.article02-title{
    margin-top: 50px;
    color:#ffffff;
    font-size: 28px;
    font-weight: 600;
    text-align:center;
}
}
/*================================================
 *  article03
 ================================================*/

.article03 {
	padding:0px 0px 0px 0px;
	width:100%;
	background-color:#FFFFFF;
    position: relative;
}
.article03 .wrapper {
    margin-right: auto; 
    margin-left:  auto;
    max-width: 700px;
    padding-right: 10px;
    padding-left:  10px;
    padding-bottom: 100px;
    z-index: 1;
}
h2.article03-title{
    margin-top: 50px;
    color:#000000;
    font-size: 36px;
    font-weight: 600;
}
.article03 .news{
    width:100%;
}
.article03 p.time{
    width:15%;
    margin-top: 20px;
    margin-right: 0px;
    float: left;
    background: #cc6699;
    color: #ffffff;
    padding: 2px 10px;
    text-align: center;
}
.article03 p.text{
    width:60%;
    margin-top: 28px;
    float: left;
    margin-left: 30px;
    margin-right: 0px;
    word-wrap:break-word;
    line-height: 1.3;
    padding: 0px 10px;
}
@media screen and (max-width: 768px) {
    .article03 .news{
        width:90%;
    }
.article03 {
	padding:0px 0px 0px 0px;
	width:100%;
	background-color:#FFFFFF;
}
    
h2.article03-title{
    margin-top: 50px;
    color:#000000;
    font-size: 28px;
    font-weight: 600;
}
}
@media screen and (max-width: 500px) {

.article03 p.time{
    width:100%;
    margin-top: 20px;
    margin-right: 0px;
    margin-left:  0px;
    float: none;
    background: #cc6699;
    color: #ffffff;
    padding: 2px 20px 2px 20px;
    text-align: left;
}
.article03 p.text{
    width:100%;
    margin-top: 5px;
    margin-left: 0px;
    margin-right: 0px;
    float: none;
    word-wrap:break-word;
    text-align: left;
    padding: 5px 10px;
}
}
/*================================================
 *  article04
 ================================================*/

.article04 {
    display: flex;
    position: relative;
    padding: 50; 0 50; 0;
	width: 100%;
    background-image: url(../images/section04_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;    
    background-position: center;
    text-align: center;
}
.article04::before{
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    mix-blend-mode: screen;
    background: linear-gradient(#f5e933,#ecbf71,#db9385 ,#cf698a, #bf1885);
    opacity: 0.75;
}
.article04 p{
    font-weight: bold;
}
h2.article04-title{
    margin-top: 50px;
    color:#000000;
    font-size: 36px;
    font-weight: 600;
}
.midashi2-pc{
    font-size:32px;
    color:#ffffff;
    font-weight: 400;
}
.midashi2-sp{
    font-size:18px;
    color:#ffffff;
    font-weight: 400;
}

@media screen and (max-width: 768px) {
h2.article04-title{
    margin-top: 50px;
    color:#000000;
    font-size: 28px;
    font-weight: 600;
}
.article04 p{
    font-weight: bold;
    line-height: 1.2;
    text-align: left;
}
}



/*================================================
 *  article05
 ================================================*/

.article05 {
	padding:0px 0px 100px 0px;
	width:100%;
	background-color:#FFFFFF;
}

h2.article05-title{
    margin-top: 50px;
    color:#000000;
    font-size: 36px;
    font-weight: 600;
}


table.tbl-02 {
    margin-right: auto;
	margin-left:  auto;
	width: 614px;
}

.tbl-02 th {
    width: 25%;
	border: none;
	color: #000000;
	padding: 10px 0px;
    border-bottom: 1px dashed #707070;
	text-align:left;
	letter-spacing: 3px;
}
.tbl-02 td {
	border: none;
	padding: 10px;
    padding-left: 50px;
    border-bottom: 1px dashed #707070;
	letter-spacing: 3px;
    line-height: 1.5;
    word-break: break-all;
}
.pv_banner{
    margin-top: 20px;
    margin-right: auto; 
	margin-left:  auto; 
    max-width: 614px;
}
.pv_banner img{
    width: 100%;
}
.sp_br{
    display: none;
}
@media screen and (max-width: 768px) {

.article05 {
	padding:70px 0px 0px 0px;
	width:100%;
	background-color:#FFFFFF;
}

.article05 {
	padding:0px 0px 90px 0px;
	width:100%;
	background-color:#FFFFFF;
}
h2.article05-title{
    margin-top: 30px;
    color:#000000;
    font-size: 28px;
    font-weight: 600;
}
.wrapper_company_table {
	margin-right: auto;
	margin-left:  auto;
	padding-right: 5px;
	padding-left:  5px;
}
    table.tbl-02 {
        margin-right: auto;
        margin-left:  auto;
        width: 100%;
    }
.tbl-02 th {
	width:100%;
	border: none;
	padding: 10px 0 0px 0px;
	color: #000000;
	text-align:left;
	letter-spacing: 3px;
}

.tbl-02 td {
	border: none;
	padding: 0px 0 20px 0;
	letter-spacing: 3px;
    word-break: break-all;
}

.last td:last-child {
	border-bottom: none;
	width: 100%;
}


.tbl-02 th,.tbl-02 td {
	border-bottom: none;
	display: block;
	width: 100%;
}

.pv_banner{
    max-width: 614px;
}
.pv_banner img{
    width: 100%;
}
}



/*================================================
 *  フッター
 ================================================*/

.footer_wrapper {
    display: flex;
    position: relative;
    height: 260px;
	width: 100%;
    background-image: url(../images/wataichi_footer_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;    
    background-position: center;
    justify-content: center;
}
.footer_wrapper::before{
    display: block;
    position: absolute;
    height: 260px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: '';
    background-color: rgba(0,0,0,0.8);
}

.footer_cont{
    z-index: 1;
    width: 600px;
    margin-top: 50px;
    justify-content: center;
    display: flex;
}
.flexbox{
    display: flex;
    justify-content: center;
}
.flexbox__item1{
    flex-grow: 1;
    max-width: 260px;
}
.flexbox__item1 img{
    width: 100%;
    flex-grow: 1;
}
.flexbox__item2{
    padding-left: 20px;
    flex-grow: 1;
}
.flexbox__item2 p.footer_address{
    font-size: 12px;
    color: #ffffff;
}
.flexbox__item2 p.footer_tel{
    margin-top: -10px;
    font-size: 32px;
    color: #ffffff;
    font-weight: bold;
}
.footer_contact {
    margin: 20px auto;
	width: 357px;	/*画像の幅*/
	height: 46px;	/*画像の高さ*/
}
.footer_contact img {
	display: block;
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
.footer_contact img:hover {
	transform: scale(1.1);	/*画像の拡大率*/
	transition-duration: 0.2s;	/*変化に掛かる時間*/
}
@media only screen and (max-width: 760px) {
    .footer_cont2 {
        margin: 20px auto;
        z-index: 1;
        /*画像の幅*/
        height: auto;
        /*画像の高さ*/
        text-align: center;
    }

    .footer_cont2_logo {
        padding: 10px;
        z-index: 3;
    }

    .footer_address2 {
        font-size: 10px;
        color: #ffffff;
        z-index: 3;
    }

    .footer_tel2 {
        margin-top: -10px;
        font-size: 21px;
        color: #ffffff;
        font-weight: bold;
        z-index: 3;
    }

    .footer_contact {
        margin: 20px auto;
        width: 100%;
        /*画像の幅*/
        height: auto;
        /*画像の高さ*/
    }

    .footer_contact img {
        margin: 10px auto;
        width: 80%;
        display: block;
        transition-duration: 0.3s;
        /*変化に掛かる時間*/
    }

    .footer_contact img:hover {
        margin: 10px auto;
        width: 80%;
        transform: scale(1.1);
        /*画像の拡大率*/
        transition-duration: 0.2s;
        /*変化に掛かる時間*/
    }
}


/* コピーライト */

footer {
	clear:both;
	padding: 10px 0 10px 0px;
	font-size:11px;
	text-align:center;
	color:#FFFFFF;
	background:#cc6699;
}

.footer_copy {
	font-size:15px;
	color:#FFFFFF;
	letter-spacing: 1px;
}


@media screen and (max-width:768px) {
    .footer_wrapper {
        margin-top:25px;
        margin-right: auto; 
        margin-left:  auto; 
        max-width: 985px;
        font-weight:bold;
        font-size:11px !important;
        letter-spacing: 1px;
    }

}



/*================================================
 *  スマートフォン向けデザイン
 ================================================*/

