
/*画面全体*/
.BG {
    min-width: 850px;
    min-height: 500px;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: 1.5px;
    color: #222222;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.choice {
    font-weight: 900;
}

.error {
    font-family: 'Noto Sans Japanese',Helvetica,Arial,serif;
    line-height: 1.8;
    letter-spacing: 1px;
    color: #ff5050;
}

a { text-decoration: none; }

/*********************************************************/

/*サイドメニュー*/
.sideMenu {
    padding: 0px 20px 40px;
    height: 100vh;
    width: 220px;
    position: fixed;
    margin: 0 0 0 40px;
    z-index: 10;
}

.ham-sideMenu {
    padding: 0px 20px 40px 60px;
    height: 100vh;
    width: 220px;
    position: fixed;
    background-color: #fff;
    display: block;
    z-index: 100;
    left: -320px;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.ham-sideMenu::before {
    content: '';
    width: 30px;
    height: 30px;
    background: url(../img/admin_icon_hamburger.png);
    background-size: 30px;
    position: fixed;
    left: 15px;
    top: 30px;
}

.ham-sideMenu:hover {
    left: 0;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.miniTitle {
    top: 80px;
    position: fixed;
    font-weight: 900;
    font-size: 16px;
    letter-spacing: 2px;
}

.title {
    top: 100px;
    position: absolute;
    font-weight: 900;
    font-size: 26px;
}

.bottomSet {
    position: absolute;
    bottom: 0;
    margin-bottom: 80px;
}

.menu {
    padding: 0;
    margin: 0 0 80px;
    font-size: 16px;
    list-style: none;
}

.menu li {
    margin-bottom: 15px;
    border-bottom: solid 1px rgba(70, 70, 70, 0);
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out
}

.menu li:hover {
    border-bottom: solid 1px #999999;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.copyright {
    margin: 0;
    font-size: 12px;
    letter-spacing: 1px;
    color: #999999;
}

/*********************************************************/

/*メインエリア*/
.mainBox {
    width: 100%;
    float: right;
    margin-left: -300px;
    padding-left: 300px;
    box-sizing: border-box;
}

.detailBox {
    width: 100%;
    float: right;
    margin-left: : -60px;
    padding-left: 60px;
    box-sizing: border-box;
}

.screen {
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.9);
}

.wordWrap {
    padding: 18vh 15vw 25vh 15vw;
}

.block {
    display: inline-block;
}

.tagArea {
    margin: 10px 0;
    display: inline-block;
    white-space:nowrap;
}

.uTag {
    margin-right: 8px;
    margin-bottom: 10px;
    list-style: none;
    float: left;
}

.uTag a {
    height: 34px;
    padding: 8px 15px 5px;
    font-size: 12px;
    background-color: rgba(255, 255, 255, 0.85);
    box-sizing: border-box;
    display: inline-block;
    border-radius: 17px;
    border: solid 1px #999999;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.uTag a:hover {
    color: #fff;
    background-color: #333333;
    border: solid 1px #333333;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.from {
    bottom: 20px;
    right: 40px;
    font-size: 12px;
    letter-spacing: 1px;
    position: fixed;
}

.iDate {
    margin-top: 20px;
    font-size: 12px;
    font-weight: 900;
    color: #999999;
}

/*********************************************************/

/*メインイメージ*/
.mainImage {
    width: 86%;
    height: 86vh;
    top: 6vh;
    left: 9%;
    text-align: center;
    box-sizing: border-box;
    position: absolute;
}

.mainImage img {
    width: 100%;
    height: 86vh;
    margin: auto;
    position: relative;
    object-fit: contain;
}

.mainImageT {
    width: 50vw;
    height: 80vh;
    top: 10vh;
    left: 35vw;
    text-align: center;
    box-sizing: border-box;
    position: absolute;
}

.mainImageT img {
    width: 50vw;
    height: 80vh;
    margin: auto;
    position: relative;
    object-fit: contain;
}

.paging {
    width: 20%;
    height: 86vh;
    top: 6vh;
    position: relative;
    opacity: 0;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.paging:hover {
    opacity: 1;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.p-nav {
    margin: 0 40px;
    top: 48%;
    color: #999999;
    text-align: center;
    position: relative;
    text-shadow: 0 0 10px #fff;
}

/*********************************************************/

/*写真一覧用グリッド*/
.photoList {
    margin: 20px 0 40px;
}

.photoBox {
    height: 180px;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 2px 2px 8px #999999;
}

.photoBox img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
}

.width_180 {
    width: 180px;
    margin: 20px;
}

.titleArea {
    width: 138px;
    height: 138px;
    margin: 10px;
    padding: 10px;
    top: 10px;
    color: #fff;
    border: solid 1px #fff;
    border-radius: 3px;
    text-align: center;
    position: absolute;
    text-shadow: 0 0 6px #666666;
    opacity: 0;
    -webkit-transition: 350ms ease-out;
    transition: 350ms ease-out;
}

.titleArea:hover {
    top: 0;
    opacity: 1;
    -webkit-transition: 350ms ease-out;
    transition: 350ms ease-out;
}

.photoId {
    margin: 35px 10px 10px;
    padding-bottom: 20px;
    font-size: 20px;
    font-weight: 900;
    border-bottom: solid 1px #fff;
}

.photoDate {
    width: 90px;
    height: 18px;
    margin: auto;
    font-weight: 900;
    overflow: hidden;
}

.pagenation {
    margin: 0px 40px 40px 0;
    display: block;
}

.pagenation a {
    height: 34px;
    margin: 0px 20px 80px;
    padding: 8px 15px 5px;
    font-size: 12px;
    background-color: rgba(255, 255, 255, 0.85);
    box-sizing: border-box;
    display: inline-block;
    border-radius: 17px;
    border: solid 1px #999999;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.pagenation a:hover {
    color: #fff;
    background-color: #333333;
    border: solid 1px #333333;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.page_num {
    top: 8px;
    text-align: center;
    position: relative;
    z-index: -1;
}


/*********************************************************/

/*タグ一覧用グリッド*/
.tagList {
    margin: 40px 0;
}

.tagBox {
    height: 182px;
}

.tagBox:hover {
    opacity: 0.85;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.tagBox img {
    width: 130px;
    height: 130px;
    object-fit: cover;
    border-radius: 65px;
    position: absolute;
    overflow: hidden;
    box-shadow: 2px 2px 8px #999999;
}

.tagName {
    width: 130px;
    height: 45px;
    top: 145px;
    letter-spacing: 1px;
    text-align: center;
    position: absolute;
    overflow: hidden;
}

.width_130 {
    width: 130px;
    margin: 20px;
}

/*********************************************************/

/*タグ詳細*/
.headerBlock {
    width: auto;
    max-width: 880px;
    margin: 60px 60px 0px 20px;
    display: block;
    position: relative;
}

.subTitle {
    margin: 40px 0px 5px 0px;
    font-weight: 700;
    font-size: 22px;
}

.subTitleD {
    font-weight: 900;
    font-size: 32px;
}

.sentence {
    margin: 5px 0px 0px 0px;
    font-family: 'Noto Sans Japanese',Helvetica,Arial,serif;
    line-height: 1.8;
    letter-spacing: 1px;
    text-align: justify;
}

.sentence:empty {
  display: none;
}

.subImage {
    width: auto;
    height: auto;
    padding: 20px 0px 40px 0px;
    display: block;
}

.subImage img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 5px;
    object-fit: contain;
}

/*********************************************************/

/*アバウトアス用グリッド*/
.profileList {
    margin: 20px 0 40px 10px;
}

.profileListBox {
    height: 130px;
    display: block;
}

.profileListBox:hover {
    opacity: 0.85;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.profileBox {
    width: 110px;
    height: 110px;
    display: inline-block;
    position: relative;
    float: left;
}

.profileBox img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 100px;
    position: relative;
    box-shadow: 2px 2px 8px #999999;
}

.profileNameBox {
    width: 180px;
    margin-left: 15px;
    margin-top: 28px;
    box-sizing: border-box;
    display: inline-block;
    float: left;
    position: relative;
}

.profileName {
    font-size: 16px;
    letter-spacing: 2px;
}

.profileDetail {
    margin-top: 10px;
    font-size: 12px;
    letter-spacing: 1px;
}

.width_310 {
    width: 310px;
    margin: 10px;
}

.pDetail {
    left: 42px;
    position: absolute;
}

.mailAdress {
    margin: 4px 110px 160px 0px;
}

.mailAdress a {
    padding-bottom: 2px;
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 1px;
    border-bottom: solid 1px rgba(70, 70, 70, 0);
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out
}

.mailAdress a:hover {
    border-bottom: solid 1px #999999;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

/*********************************************************/

/*share*/
.shareList {
    height: 34px;
    margin: 20px 0;
    white-space: nowrap;
}

.shareListItem {
    height: 34px;
    margin-right: 8px;
    display: inline-block;
}

.shareBox img {
    width: 40px;
    height: 40px;
    position: absolute;
}

.shareBox {
    width: 40px;
    height: 40px;
    border-radius: 5px;
    display: inline-block;
}

.shareBox:hover {
    opacity: 0.8;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}

.icon-twitter{ background:#55acee; }
.icon-facebook{ background:#3B5998;} 
.icon-pinterest{ background:#bd081c;}
.icon-line{ background:#1dcd00;}

/*********************************************************/

/* JS */
.fadeBox {
    top: 48px;
    opacity: 0;
    position: relative;
    transition: all .4s .2s ease;
}

.fadeBox.bb {
    top: 0px;
    opacity: 1;
    position: relative;
}

/*********************************************************/

