@charset "utf-8";

* {
    box-sizing: border-box;
}
html {
    background-color: #0d171c;
	scroll-behavior: smooth;
	margin: 0;
	padding: 0;
	width: 100vw;
    height: 100vw;
}
body {
	width: 100vw;
    height: 100vw;
    object-fit: cover;
	margin: 0;
	padding: 0;
	background-color: #0d171c;
	font-family: "Noto Serif JP";
    animation: disableScroll .1s linear 2.8s both;
}
@keyframes
disableScroll {
  0%{
    overflow: hidden;
  }
  100%{
    overflow: auto;
  }
}



a {
	cursor: pointer;
    text-decoration: none;
}
img {
	max-width: 100%;              /* 1 */
    height: auto;                 /* 1 */
    vertical-align: middle;       /* 2 */
    font-style: italic;           /* 3 */
    background-repeat: no-repeat; /* 4 */
    background-size: cover;       /* 4 */
    shape-margin: 0.75rem;        /* 5 */
}


/*------------------------------ローディング------------------------------*/


#loading {
    /*fixedで全面に固定*/
    position: fixed;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(0deg, rgba(12, 18, 35, 1) 1%, rgba(44, 127, 99, 1) 49%, rgb(239.06, 214.96, 143.44, 1) 90%);
    text-align:center;
    color:#fff;
}

/* Loadingバー中央配置　*/
#load_text {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 9999;
    width: 30%;
    transform: translate(-50%, -50%);
    color: #fff;
}


/*------------------------------ヘッダー------------------------------*/


#gotogallerybottom {
    cursor: pointer;
    color: #bfbfbf;
    position: fixed;
    top: -7vw;
    left: -6vw;
    height: 14vw;
    line-height: 2.5vw;
    text-align: center;
    width: 14vw;
    border-radius: 8vw;
    border: solid 0.1vw #bfbfbf;
    font-family: "Noto Serif JP";
    z-index: 999;
    text-decoration: none;
    display: none;
}

#gotogallerybottom p {
    margin: 8.3vw 0 0 5vw;
    font-size: 0.9vw;
    color: #bfbfbf;
}
#gotogallerybottom:hover {
    transition: 0.5s;
    background-color: #485478;
}

.lightmask_hide {
    position: absolute;
    display: none;
    width: 100%;
    height: 439vw;
    height: 448vw;
    background: #0d171c;
    margin: 0;
    z-index: 9999999;
    animation: flash 5s linear;
    animation-fill-mode: forwards
}

@keyframes flash {

    0%,
    20% {
        opacity: 0;
    }

    15% {
        opacity: 1;
        background: #0d171c;
    }

    50%,
    99% {
        transition: 3s;
        opacity: 1;
        background: #0d171c;
    }
    100% {
        display: none;
    }
}


.head_img {
    width: 100%;
    height: 100%;
    display: block;
    overflow-x: hidden;
    background-size: cover;
    overscroll-behavior: none;
    background-attachment: fixed;
}
.head_img_ipad {
    display: none;
}
.head_img_small {
    display: none;
}

.bigtitle_p_span {
    margin: -1vw 0 0 1.2vw;
    position: absolute;
}
.bigtitle_p_span_second {
    margin: 0 0 0 6.5vw;
}
.section_div {
    position: relative;
    bottom: 68vw;
}
.logoimeage {
    padding: 0 3vw 0 0;
    width: 14%;
    margin: 4vw auto;
    display: none;
}
h1 {
    color: #dfdfdf;
	font-size: 2vw;
	font-weight: lighter;
	letter-spacing: 0.05em;
    margin: -2vw auto;
    text-align: center;
}
.h1_feadin {
    display: none;
}

@media (orientation: portrait){

.lightmask_hide {
    height: 560vw;
}
.section_div {
    position: relative;
    bottom: 91vw;
}
.logoimeage {
    padding: 0 3.5vw 0 0;
    width: 17%;
    margin: 4vw auto;
}
h1 {
    color: #dfdfdf;
    font-size: 2.5vw;
}
#gotogallerybottom {
    top: -8vw;
    left: -7vw;
    height: 19vw;
    width: 19vw;
    border-radius: 10vw;
}
#gotogallerybottom p {
    margin: 11vw 0 0 6vw;
    font-size: 1.5vw;
    color: #bfbfbf;
}
.head_img {
    display: none;
}
.head_img_ipad {
    display: block;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    background-size: cover;
    overscroll-behavior: none;
    background-attachment: fixed;
}
.head_img_small {
    display: none;
}
}


@media screen and (max-width: 480px) {
.lightmask_hide {
    height: 890vw;
}
.section_div {
    position: relative;
    bottom: 152vw;
}
.logoimeage {
    padding: 0 5.5vw 0 0;
    width: 26%;
    margin: 4vw auto;
}
#gotogallerybottom {
    top: -9vw;
    left: -6vw;
    height: 26vw;
    width: 26vw;
    border-radius: 16vw;
    border: solid 0.2vw #bfbfbf;
}
#gotogallerybottom p {
    margin: 15vw 0 0 5vw;
    font-size: 2.5vw;
    color: #bfbfbf;
}
.head_img {
    display: none;
}
.head_img_ipad {
    display: none;
}
.head_img_small {
    display: block;
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    background-size: cover;
    overscroll-behavior: none;
    background-attachment: fixed;
}
h1 {
    font-size: 3vw;
    font-weight: lighter;
    letter-spacing: 0.05em;
    margin: 0;
}
}

/*-------------------------------トップ------------------------------*/

.btn_arrow_feadin {
    display: none;
}
.btn_arrow {
    width: 1.5%;
    right: 4.5vw;
    bottom: 6vw;
    position: fixed;
    transition: all .3s;
    z-index: 99;
}
.btn_arrow:hover {
    transform: translateY(-7px);
}

@media (orientation: portrait){
.btn_arrow {
    width: 2.2%;
    right: 4.5vw;
    bottom: 6vw;
    position: fixed;
    transition: all .3s;
    z-index: 99;
}
}

@media screen and (max-width: 480px) {
.btn_arrow {
    width: 3%;
    right: 6.5vw;
    bottom: 56vw;
    position: fixed;
    transition: all .3s;
    z-index: 99999;
}
}
/*------------------------------snsアイコン------------------------------*/

.snsicon_feadin {
    display: none;
}
.snsicon {
	top: -0.5vw;
    right: 2vw;
    display: flex;
    list-style: none;
    flex-wrap: nowrap;
    position: absolute;
    content: '';
    flex-direction: column;
    position: fixed;
    z-index: 999;
}
.snsicon li {
	float: left;
	margin: 1vw 1.5vw 0 0;
	padding: 0;
}
.snsicon li a::before {
    color: #bfbfbf;
    display: inline-block;
    font-family: FontAwesome;
    font-size: 1.5vw;
    height: 2.5vw;
    line-height: 2.5vw;
    text-align: center;
    width: 2.5vw;
    border-radius: 2vw;
    border: solid 0.1vw #bfbfbf;
}
.snsicon li a:hover::before {
	color: #202020;
	background-color: #bfbfbf;
	border-radius: 1em;
	transition: all 0.5s ease-in-out;
}
.snsicon li a[href*="twitter.com"]::before {
	content: "\f099";
}
.snsicon li a[href*="instagram.com"]::before {
	content: "\f16d";
}

@media (orientation: portrait){
.snsicon {
    top: 0.5vw;
    right: 3vw;
}
.snsicon li {
    float: left;
    margin: 2vw 1.5vw 0 0;
    padding: 0;
}
.snsicon li a::before {
    color: #bfbfbf;
    display: inline-block;
    font-family: FontAwesome;
    font-size: 2.5vw;
    height: 4.5vw;
    line-height: 4.5vw;
    text-align: center;
    width: 4.5vw;
    border-radius: 3vw;
    border: solid 0.1vw #bfbfbf;
}
}

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

.snsicon li a::before {
    color: #bfbfbf;
    display: inline-block;
    font-family: FontAwesome;
    font-size: 4vw;
    height: 7vw;
    line-height: 7.5vw;
    text-align: center;
    width: 7vw;
    border-radius: 8vw;
    border: solid 0.1vw #bfbfbf;
}
.snsicon li {
    float: left;
    margin: 3vw 1.5vw 0 0;
    padding: 0;
}
}



/*------------------------------section------------------------------*/

#content_wrap {
	height: 100vw;
}
.section_content {
	height: 70vw;
}

/*------------------------------continer------------------------------*/

.continer {
	padding: 13vw 0 0 0;
	position: relative;
	width: 100vw;
	height: 100vw;
    min-height: 100vw;
    padding-bottom: 5vw;
}

@media screen and (max-width: 480px) {
.continer {
    padding: 195vw 0 0 0;
}
}

/*------------------------------背景------------------------------*/

.background-image {
	margin-top: -20vw;
	background-color: #0d171c;
    position: absolute;
    width: 100vw;
    height: 360vw;
    -webkit-mask-image: linear-gradient(0deg, white 91%, transparent);
}

@media (orientation: portrait){

.background-image {
    margin-top: 45vw;
    background-color: #0d171c;
    position: absolute;
    width: 100vw;
    height: 440vw;
    -webkit-mask-image: linear-gradient(0deg, white 96%, transparent 100%);
}
}

@media screen and (max-width: 480px) {
.background-image {
    margin-top: 118vw;
    height: 100%;
    -webkit-mask-image: linear-gradient(0deg, white 95%, transparent 99%);
}
}

/*------------------------------背景デコレーション------------------------------*/

.background_decoration_one {
    position: relative;
    bottom: 128vw;
}
.background_decoration_one_img {
    opacity: 0.3;
    width: 40vw;
    height: 100%;
    -webkit-mask-image: linear-gradient(0deg, white 77%, transparent);
}

.background_decoration_two {
    position: relative;
    top: 23vw;
    left: 47vw;
    z-index: 1;
}
.background_decoration_two_img {
    opacity: 0.3;
    width: 46vw;
    height: 100%;
    -webkit-mask-image: linear-gradient(0deg, white 77%, transparent);
}

.background_decoration_three {
    position: relative;
    top: -12vw;
    left: -45vw;
    z-index: 1;
}
.background_decoration_three_img {
    opacity: 0.3;
    width: 25vw;
    height: 100%;
    -webkit-mask-image: linear-gradient(117deg, white 60%, transparent);
    transform: rotate(-34deg);
}

.background_decoration_four {
    text-align: right;
    position: relative;
    margin: -15vw 0 0;
}
.background_decoration_four_img {
    opacity: 0.18;
    width: 38vw;
    height: 100%;
    -webkit-mask-image: linear-gradient(0deg, white 75%, transparent);
}



@media (orientation: portrait){
.background_decoration_two_img {
    width: 70vw;
}
}



@media screen and (max-width: 480px) {
.background_decoration_one_img {
    width: 60vw;
}
.background_decoration_one {
    bottom: 146vw;
}

.background_decoration_two_img {
    width: 82vw;
}
.background_decoration_two {
    top: 24vw;
    left: 32vw;
}

.background_decoration_three_img {
    width: 38vw;
}
.background_decoration_three {
    top: -33vw;
    left: 10vw;
}

.background_decoration_four {
    margin: -100vw auto;
}



}

/*------------------------------ライト------------------------------*/

.lightoff_gallery {
    position: relative;
    background-color: #0d171c;
    width: 100%;
    height: 100vw;
    opacity: 0.8;
    z-index: 10;
}
.lighton_gallery {
    transition: 0.5s ease-in-out;
    transform: translateX(1vw);
    opacity: 0;
    z-index: 0;
}
.spotlight_img {
    z-index: 99;
    width: 25%;
    margin: -1vw 0 0 -3vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.spotlight_img_under {
    z-index: 99;
    width: 25%;
    margin: -1vw 0 0 -3vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.spotlight_img_lightoff {
    transition: 0.5s ease-in-out;
    transform: translateX(0);
    opacity: 0;
    z-index: 0;
}


.lightoff_plofile {
    position: relative;
    background-color: #0d171c;
    width: 100%;
    height: 100vw;
    opacity: 0.8;
    z-index: 10;
}
.lighton_plofile {
    transition: 0.5s ease-in-out;
    transform: translateX(1vw);
    opacity: 0;
    z-index: 0;
}
.spotlight_img_2 {
    z-index: 99;
    width: 25%;
    margin: -3vw 0 0 77vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.spotlight_img_under_2 {
    z-index: 99;
    width: 25%;
    margin: -3vw 0 0 77vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.spotlight_img_lightoff_2 {
    transition: 0.5s ease-in-out;
    transform: translateX(0);
    opacity: 0;
    z-index: 0;
}


.lightoff_contact {
    position: relative;
    background-color: #0d171c;
    width: 100%;
    height: 100vw;
    opacity: 0.8;
    z-index: 10;
}
.lighton_contact {
    transition: 0.5s ease-in-out;
    transform: translateX(1vw);
    opacity: 0;
    z-index: 0;
}
.spotlight_img_3 {
    z-index: 99;
    width: 17%;
    margin: -10vw 0 0 -1vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.spotlight_img_under_3 {
    z-index: 99;
   width: 17%;
    margin: -10vw 0 0 -1vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.spotlight_img_lightoff_3 {
    transition: 0.5s ease-in-out;
    transform: translateX(0);
    opacity: 0;
    z-index: 0;
}


@media (orientation: portrait){

.lightoff_gallery {
    position: relative;
    background-color: #0d171c;
    width: 100%;
    height: 100vw;
    opacity: 0.8;
}
.lightoff_plofile {
    position: relative;
    background-color: #0d171c;
    width: 100%;
    height: 108vw;
    opacity: 0.8;
}
.spotlight_img_2 {
    z-index: 99;
    width: 20%;
    margin: -3vw 0 0 80vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.spotlight_img_under_2 {
    z-index: 99;
    width: 20%;
    margin: -3vw 0 0 80vw;
    position: absolute;
    mix-blend-mode: overlay;
}
}


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

.spotlight_img {
    z-index: 99;
    width: 28%;
    margin: -23vw 0 0 -5vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.spotlight_img_under {
    z-index: 99;
    width: 28%;
    margin: -23vw 0 0 -5vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.lightoff_gallery {
    position: relative;
    background-color: #0d171c;
    width: 100%;
    height: 143vw;
    opacity: 0.8;
}

.spotlight_img_2 {
    width: 30%;
    margin: -1vw 0 0 74vw;
}
.spotlight_img_under_2 {
    z-index: 99;
    width: 30%;
    margin: -1vw 0 0 74vw;
    position: absolute;
    mix-blend-mode: overlay;
}
.lightoff_plofile {
    position: relative;
    background-color: #0d171c;
    width: 100%;
    height: 160vw;
    opacity: 0.8;
}

.spotlight_img_3 {
    width: 21%;
    margin: 9vw 0 0 0;
}
.spotlight_img_under_3 {
    z-index: 99;
    width: 21%;
    margin: 9vw 0 0 0;
    position: absolute;
    mix-blend-mode: overlay;
}
.lightoff_contact {
    position: relative;
    background-color: #0d171c;
    width: 100%;
    height: 160vw;
    opacity: 0.8;
}
}


/*------------------------------タイトル------------------------------*/


.title {
	margin: 0;
	padding: 0;
}
.title_feadup{
    transform: translateY(3vw);
    opacity: 0;
}
.title_feadup.is-active{
    transition: .6s;
    transform: translateY(0);
    opacity: 1;
}


/*------------------------------ギャラリー------------------------------*/

.title_gallery {
    font-size: 4vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: 13vw auto 0;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
}


.gallery_spotlight_mask {
    position: relative;
    top: -100vw;
    width: 100%;
    height: 100vw;
    -webkit-mask-image: radial-gradient(57vw 67vw, #f3f9c5 35%, transparent 65% );
}

.gallery {
    padding: 28vw 0 0 0;
    background-color: #30494f;
    width: 100%;
    height: 100vw;
    position: absolute;
}

#double_slider{
    display: flex;
    margin: -3vw auto;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
#main_slider {
    width: 50vw;
    height: 32vw;
    border: 0.3vw outset #16232a;
    box-shadow: 0.3vw 0.3vw 0 0 #182528;
}
.slick-slide img {
    cursor: auto;
}
.slick-track {
    height: 31.4vw;
}

    /* テキストスライダーの装飾 */

.text_slider_number {
    font-size: 2.5vw!important;
    color: #D9D9D9!important;
    width: 4vw!important;
    height: 1vw!important;
    box-shadow: none!important;
    border: none!important;
    background-color: transparent!important;
    text-align: start!important;
    border-radius: 0!important;
    padding: 0!important;
    margin: 0!important;
    position: relative;
    bottom: 2.5vw;
    left: 21vw;
}

.text_slider_number_div {
    position: relative;
    top: 4vw;
    left: 22vw;
    width: 3vw;
    height: 2vw;
    color:#D9D9D9;
}
.text_slider_number_underber {
    position: absolute;
    top: 0.8vw;
    left: -1.5vw;
    width: 6vw;
    height: 0.1vw;
    background: #D9D9D9;
    transform: rotate(-45deg);
}
.text_slider_number_under {
    font-size: 2vw;
    position: absolute;
    top: 0;
    left: 1.6vw;
}

.text_slider {
    width: 22vw;
    margin: 2vw auto 0;
    padding: 0;
    text-align: center;
    border-radius: 0.1vw;
    background-color: #cbcbcb;
    height: 14vw;
    box-shadow: 0.5vw 0.5vw 0 0 #182528;
    border:  outset 0.5vw;
}
.caption_p p:first-child {
    font-size: 0.8vw;
    margin: 1vw 0 0 0;
}
.caption_p p:nth-child(2) {
    font-size: 1.5vw;
    margin: 2vw 0;
    letter-spacing: 0.2vw;
}
.caption_p p:nth-child(3) {
    margin: auto;
    width: 87%;
    border-bottom: solid 0.05vw rgb(128, 128, 128);
}
.caption_p p:nth-child(4) {
    font-size: 0.8vw;
    margin: 1vw 0 auto;
}
.caption_p p:last-child {
    font-size: 0.7vw;
    margin: auto;
}




.number_slickdiv {
    padding: 0 0 0 0.7vw;
}
.slick-next{
    right: 9.2vw !important;
    top: 44vw;
}
.slick-prev{
    left: 9vw!important;
    top:44vw;
}
.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 2vw;
    line-height: 1;
    opacity: 0.5;
    color: white;
}


@media (orientation: portrait){

.gallery {
    padding: 28vw 0 0 0;
}
.title_gallery {
    font-size: 8vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: 90vw 0 auto;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
    opacity: 0.5;
}
.text_slider_number_under {
    font-size: 2vw;
    position: absolute;
    top: 1vw;
    left: 1.6vw;
}
}


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


.title_gallery {
    font-size: 7vw;
    position: relative;
    letter-spacing: 1.5vw;
    text-align: center;
    margin: 12vw 0 20vw auto;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
    opacity: 0.5;
    padding: 0;
}

.gallery {
    height: 140vw;
    padding: 53vw 0 0 0;
}
.gallery_spotlight_mask {
    position: relative;
    top: -143vw;
    width: 100%;
    height: 137vw;
    -webkit-mask-image: radial-gradient(81vw 106vw, #f3f9c5 37%, transparent 65%);
}
#main_slider {
    width: 74vw;
    height: 50.5vw;
}
#double_slider {
    margin: -3vw 0 0 13vw;
    width: 74vw;
    height: 50.5vw;
}
.text_slider {
    width: 33vw;
    height: 23vw;
    margin: 10vw 0;
}
.slick-track {
    height: 50vw;
}
.slick-prev {
    right: 12vw!important;
    top: 75vw;
}
.slick-prev:before, .slick-next:before {
    font-size: 4vw;
}
.slick-next {
    right: 10vw!important;
    top: 75vw;
    z-index: 9;
}
.text_slider_number_div {
    top: 3vw;
    left: 21vw;
}
.text_slider_number_under {
    font-size: 4vw;
    top: 3.8vw;
    left: 13vw;
}
.text_slider_number_underber {
    position: absolute;
    top: 2.8vw;
    left: 8vw;
    width: 10vw;
    height: 0.1vw;
    background: #D9D9D9;
    transform: rotate(-45deg);
}
.text_slider_number {
    bottom: 3.2vw !important;
    left: 30vw !important;
    font-size: 5vw!important;
    color: #D9D9D9!important;
    width: 8vw!important;
}
.caption_p p:first-child {
    font-size: 1.5vw;
    margin: 1vw 0 0 0;
}
.caption_p p:nth-child(2) {
    font-size: 2.2vw;
    margin: 2.5vw 0 3vw 0;
    letter-spacing: 0.4vw;
}
.caption_p p:nth-child(4) {
    font-size: 1.4vw;
    margin: 2.5vw 0 1vw auto;
    height: auto;
}
.caption_p p:last-child {
    font-size: 1.2vw;
    margin: auto;
    width: 100%;
}

}

/*------------------------------プロフィール------------------------------*/

.plofile_text_div {
    height: 110vw;
    color: #dfdfdf;
    margin-top: -10vw;
    padding: 0 0 10vw 0;
    background-color: #30494f;
}

.plofile_spotlight_2_mask {
    position: relative;
    top: -97vw;
    width: 100%;
    height: 100vw;
    -webkit-mask-image: radial-gradient(53vw 63vw, #f3f9c5 36%, transparent 62%);
}

.title_plofile {
    font-size: 4vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: -123vw 0 2vw 0;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
}
h3 {
    margin: -9vw auto 3vw;
    padding: 0;
    text-align: center;
    font-size: 2.5vw;
}
h3 span {
    font-size: 2.1vw;
}

h5 {
    font-size: 1.1vw;
    padding: 0;
    margin: 0 0 -1.8vw -6vw;
}

dt {
    float:left;
    clear:both;
    padding-top: 0.5vw;
    font-size: 1vw;
}
dd {
    float:left;
    padding-top: 0.5vw;
    font-size: 1vw;
}

.plofile_text_before {
    padding: 5vw 0 0 36vw;
    margin: 0;
    font-family: "M PLUS Rounded 1c";
    position: relative;
    z-index: 10;
}

.plofile_text_after {
    padding: 8vw 0 0 36vw;
    margin: 0;
    font-family: "M PLUS Rounded 1c";
    position: relative;
    z-index: 10;
}

.plofile_text_over {
    font-size: 1.2vw;
    margin: auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-evenly;
    position: relative;
    z-index: 10;
    text-align: justify;
}
.plofile_text_over p:first-child {
    margin: 3vw;
    font-size: 1.7vw;
}
.plpfile_txst_first {
    font-size: 1.9vw;
}
.plofile_text_over p:nth-child(2) {
    margin: 1vw auto;
    padding: 0 26vw;
    text-indent: 1vw;
}
.plofile_text_over p:nth-child(3) {
    padding: 0 26vw;
}

.plofile_img_flex {
    width: 35%;
    padding: 18vw 0 0 15vw;
    mix-blend-mode: overlay;
    opacity: 0.5;
}




@media (orientation: portrait){

.title_plofile {
    font-size: 8vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: -123vw 0 auto;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
    opacity: 0.5;
}
.plofile_spotlight_2_mask {
    position: relative;
    top: -92vw;
    width: 100%;
    height: 100vw;
    -webkit-mask-image: radial-gradient(59vw 76vw, #f3f9c5 36%, transparent 62%);
}
h3 {
    margin: -12vw auto 3vw;
    font-size: 3.5vw;
}
.plofile_text_over p:first-child {
    margin: 3vw;
    font-size: 2vw;
}
.plofile_text_over p:nth-child(2) {
    margin: 3vw auto;
}
.plofile_text_before {
    padding: 10vw 0 0 36vw;
}

}





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

.plofile {
    height: 150vw;
    margin-top: -15vw;
}

.title_plofile {
    font-size: 7vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: -151vw 0 0 auto;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
    opacity: 0.5;
}
h3 {
    margin: -42vw auto 5vw;
    padding: 0;
    text-align: center;
    font-size: 6.5vw;
}
.plofile_text_over {
    font-size: 2.5vw;
    letter-spacing: 0.2vw;
}
.plofile_text_div {
    height: 180vw;
    color: #dfdfdf;
    margin-top: -57vw;
    padding: 0 0 0vw 0;
    background-color: #30494f;
}
.plofile_text_over p:first-child {
    margin: 4vw 0 2vw 0;
    font-size: 3.1vw;
}
.plpfile_txst_first {
    font-size: 3vw;
}
.plofile_text_over p:nth-child(2) {
    padding: 0 19vw;
}
.plofile_text_over p:nth-child(3) {
    padding: 0 19vw;
}
h5 {
    font-size: 2.4vw;
    padding: 0;
    margin: 2vw 0 1vw -3vw;
}
.plofile_text_before {
    padding: 3vw 0 0 22vw;
}
.plofile_text_after {
    padding: 12vw 0 0 22vw;
    margin: 0;
    font-family: "M PLUS Rounded 1c";
}

.plofile_spotlight_2_mask {
    width: 100%;
    height: 160vw;
    -webkit-mask-image: radial-gradient(87vw 113vw, #f3f9c5 43%, transparent 72%);
}
dd {
    margin: 0 0 0 4vw;
}
dt {
    font-size: 2.3vw;
    padding-top: 0.3vw;
}
dd {
    font-size: 2vw;
}
}







/*---------------------------------------プロフィール英語---------------------------------------*/

.plofile_text_div1 {
    height: 110vw;
    color: #dfdfdf;
    margin-top: -16vw;
    padding: 0 0 10vw 0;
    background-color: #30494f;
}

.plofile_spotlight_2_mask1 {
    position: relative;
    top: 6vw;
    width: 100%;
    height: 100vw;
    -webkit-mask-image: radial-gradient(53vw 63vw, #f3f9c5 36%, transparent 62%);
}

.title_plofile1 {
    font-size: 4vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: -100vw 0 2vw 0;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
}
.h3-1 {
    margin: 0;
    padding: 25vw 0 0;
    text-align: center;
    font-size: 2vw;
}
h3 span {
    font-size: 2.1vw;
}

h5 {
    font-size: 1.1vw;
    padding: 0;
    margin: 0 0 -1.8vw -6vw;
}

dt {
    float:left;
    clear:both;
    padding-top: 0.5vw;
    font-size: 1vw;
}
dd {
    float:left;
    padding-top: 0.5vw;
    font-size: 1vw;
}

.plofile_text_before1 {
    padding: 5vw 0 0 36vw;
    margin: 0;
    font-family: "M PLUS Rounded 1c";
    position: relative;
    z-index: 10;
}

.plofile_text_after1 {
    padding: 8vw 0 0 36vw;
    margin: 0;
    font-family: "M PLUS Rounded 1c";
    position: relative;
    z-index: 10;
}

.plofile_text_over1 {
    font-size: 1.2vw;
    margin: 1vw 2vw 0;
    padding: 0;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-evenly;
    position: relative;
    z-index: 10;
    text-align: justify;
}
.plofile_text_over1 p:first-child {
    margin: 4vw auto;
    font-size: 1.7vw;
    text-align: center;
}
.plpfile_txst_first1 {
    font-size: 1.9vw;
}
.plofile_text_over1 p:nth-child(2) {
    margin: 1vw auto;
    padding: 0 26vw;
    text-indent: 1vw;
}
.plofile_text_over1 p:nth-child(3) {
    padding: 0 26vw;
}
.plofile_text_over1 p:nth-child(4) {
    padding: 0 26vw;
}
.plofile_text_over1 p:nth-child(5) {
    padding: 0 26vw;
}

.plofile_img_flex1 {
    width: 35%;
    padding: 18vw 0 0 15vw;
    mix-blend-mode: overlay;
    opacity: 0.5;
}




@media (orientation: portrait){

.title_plofile1 {
    font-size: 8vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: -123vw 0 auto;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
    opacity: 0.5;
}
.plofile_spotlight_2_mask1 {
    position: relative;
    top: -165vw;
    width: 100%;
    height: 100vw;
    -webkit-mask-image: radial-gradient(59vw 76vw, #f3f9c5 36%, transparent 62%);
}
h3 {
    margin: -12vw auto 3vw;
    font-size: 3.5vw;
}
.plofile_text_over1 p:first-child {
    margin: 3vw;
    font-size: 2vw;
}
.plofile_text_over1 p:nth-child(2) {
    margin: 3vw auto;
}
.plofile_text_before1 {
    padding: 10vw 0 0 36vw;
}

}





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

.plofile1 {
    height: 150vw;
    margin-top: -15vw;
}

.title_plofile1 {
    font-size: 7vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: -75vw 0 0 auto;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
    opacity: 0.5;
}
h3 {
    margin: -42vw auto 5vw;
    padding: 0;
    text-align: center;
    font-size: 6.5vw;
}
.plofile_text_over1 {
    font-size: 2.5vw;
    letter-spacing: 0.2vw;
}
.plofile_text_div1 {
    height: 180vw;
    color: #dfdfdf;
    margin-top: 175vw;
    padding: 0 0 0vw 0;
    background-color: #30494f;
}
.plofile_text_over1 p:first-child {
    margin: 4vw 0 2vw 0;
    font-size: 3.1vw;
}
.plpfile_txst_first1 {
    font-size: 3vw;
}
.plofile_text_over1 p:nth-child(2) {
    padding: 0 8vw;
}
.plofile_text_over1 p:nth-child(3) {
    padding: 0 8vw;
}
.plofile_text_over1 p:nth-child(4) {
    padding: 0 8vw;
}
.plofile_text_over1 p:nth-child(5) {
    padding: 0 8vw;
}
h5 {
    font-size: 2.4vw;
    padding: 0;
    margin: 2vw 0 1vw -3vw;
}
.plofile_text_before1 {
    padding: 3vw 0 0 22vw;
}
.plofile_text_after1 {
    padding: 12vw 0 0 22vw;
    margin: 0;
    font-family: "M PLUS Rounded 1c";
}

.plofile_spotlight_2_mask1 {
    width: 100%;
    height: 160vw;
    -webkit-mask-image: radial-gradient(87vw 113vw, #f3f9c5 43%, transparent 72%);
}
dd {
    margin: 0 0 0 4vw;
}
dt {
    font-size: 2.3vw;
    padding-top: 0.3vw;
}
dd {
    font-size: 2vw;
}
}


































/*------------------------------お問い合わせ------------------------------*/


.contact {
    height: 100vw;
    padding: 0;
}
.title_contact {
    font-size: 4vw;
    position: relative;
    letter-spacing: 1.5vw;
    margin: -95vw 0 2vw 0;
    text-align: center;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
}

.plofile_spotlight_3_mask {
    position: relative;
    top: -97vw;
    width: 100%;
    height: 84vw;
    -webkit-mask-image: radial-gradient(53vw 63vw, #f3f9c5 37%, transparent 65%);
}
.contact_spotlight_backgroundcolor {
     background-color: #30494f;
}
.text_h7 {
    color: #cfcfcf;
    text-align: center;
    font-size: 1.3vw;
    padding: 13vw 0 4vw 0;
}

.contact_text {
    color: #cfcfcf;
    margin: -4vw auto;
    text-align: center;
}

.contact_text p:first-child {
    font-size: 1vw;
}
.contact_text p:nth-child(2) {
    padding: 2vw 0 0 1vw;
}
.contact_text_span {
    padding: 0 1vw 0 1vw;
}

form {
    padding: 0 0 15vw 0;
    max-width: 36vw;
    margin: 11vw auto;
 }
.flex_text {
	padding: 0 0 0.3vw 0.5vw;
	font-size: 1.2vw;
	display: flex;
	margin: 0;
	color: #cfcfcf;
}

.feedback-input {
    color: #0f0f11;
    font-family: Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 1.1vw;
    padding: 0.2vw;
    margin-bottom: 4vw;
    width: 100%;
    box-sizing: border-box;
    outline: 0;
    display: block;
}
.flex_text span {
    background-color: #d54a4a;
    color: #fff;
    margin: 0.5vw 0 0 0.6vw;
    border-radius: 0.2vw;
    padding: 0vw 0.4vw 0.3vw;
    font-size: 0.7vw;
    height: 1vw;
}

.flex_text_example {
    font-size: 1vw;
    color: #adadad;
    margin: -3.8vw 0 2vw 0.5vw;
}
.flex_text_example_span {
    padding: 0 0 0 1vw;
}

.caveat_text {
    text-align: center;
    margin: 3vw auto;
    font-size: 1vw;
    color: #fff;
}

textarea {
    height: 17vw;
    line-height: 150%;
    resize: vertical;
}
[type="submit"] {
    font-family: 'Montserrat', Arial, Helvetica, sans-serif;
    width: 30%;
    background: #CC6666;
    border-radius: 3vw;
    border: 0;
    cursor: pointer;
    color: #efefef;
    font-size: 1.5vw;
    padding-top: 0.7vw;
    padding-bottom: 0.7vw;
    transition: all 0.3s;
    margin: auto;
    font-weight: 600;
    display: block;
}
[type="submit"]:hover {
    background: #CC4949;
}

.flex {
    display: flex;
}


.footer_div {
    text-align: center;
    margin: 0 auto;
}
.footer_p {
    position: relative;
    font-size: 1vw;
    color: #7a7c84;
    margin: 1vw auto 2vw;
}
.footer_p span {
    font-size: 0.8vw;
}

@media (orientation: portrait){

.title_contact {
    font-size: 7vw;
    position: relative;
    letter-spacing: 1.5vw;
    text-align: center;
    margin: -73vw 0 auto;
    color: transparent;
    -webkit-text-stroke: 0.8px #dfdfdf;
    opacity: 0.5;
}
}


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

.contact {
    position: relative;
    top: 0;
}

.plofile_spotlight_3_mask {
    margin-top: -64vw;
    width: 100%;
    height: 170vw;
    -webkit-mask-image: radial-gradient(83vw 116vw, #f3f9c5 43%, transparent 72%);
}
.contact_text p:first-child {
    padding: 0 27vw;
    font-size: 2.2vw;
}
.contact_spotlight_backgroundcolor {
    height: 180vw;
    background-color: #30494f;
}

.flex {
    width: 52vw;
}
.text_h7 {
    font-size: 2.9vw;
    padding: 27vw 0 4vw 0;
}
form {
    padding: 0 0 15vw 0;
    max-width: 52vw;
    margin: 10vw auto;
}
.flex_text {
    padding: 0 0 1vw 0.5vw;
    font-size: 2.7vw;
    display: flex;
    margin: 0;
    color: #cfcfcf;
}
.flex_text span {
    background-color: #d54a4a;
    color: #fff;
    margin: 0.9vw 0 0 1vw;
    border-radius: 0.2vw;
    padding: 0vw 0.4vw 0.2vw;
    font-size: 1.7vw;
    height: 2.6vw;
}

.feedback-input {
    color: #0f0f11;
    font-family: Helvetica, Arial, sans-serif;
    font-weight: 500;
    font-size: 2.5vw;
    padding: 0.2vw;
    margin-bottom: 3vw;
    width: 100%;
    box-sizing: border-box;
    outline: 0;
    display: block;
}
.feedback-input_height {
    height: 32vw;
}

[type="submit"] {
    font-size: 2.5vw;
    margin: 2vw auto;
}
.flex_text_example {
    font-size: 2vw;
    color: #adadad;
    margin: -3vw 0 2.5vw 0.5vw;
}
.caveat_text {
    text-align: center;
    margin: 6vw -11vw;
    font-size: 2.2vw;
    color: #fff;
}
.h3-1 {
    margin: 0;
    padding: 20vw 0 0;
    text-align: center;
    font-size: 6vw;
}
.footer_p {
    position: relative;
    font-size: 1vw;
    color: #7a7c84;
    margin: -160vw auto 2vw;
}
.footer_p span {
    font-size: 1.4vw;
}
}










